@arnaudjnn/billing-tools 21.0.0 → 21.1.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.
@@ -59,8 +59,19 @@ export interface CreateBillingOptions {
59
59
  maxDuration?: number;
60
60
  requireAuth?: boolean;
61
61
  };
62
- /** Enable MPP machine payments (pay-per-request 402). Omit to leave it off. */
63
- machinePayment?: MachinePaymentOptions;
62
+ /**
63
+ * Enable MPP machine payments (pay-per-request 402). Omit to leave it off.
64
+ *
65
+ * `amount` is optional HERE, unlike in the standalone handler: omitted, a request is
66
+ * priced at what the tool it is calling costs — `toolCosts[<tool>]`, read from the
67
+ * path, which is the same map `get_credit_balance` and the REST tool list publish. A
68
+ * consumer that wrote that function by hand was re-deriving its own rate card, and a
69
+ * flat fee is wrong in both directions across a catalogue that spans 0 to 80 credits.
70
+ * Pass a number to charge one price per request regardless of tool.
71
+ */
72
+ machinePayment?: Omit<MachinePaymentOptions, "amount"> & {
73
+ amount?: MachinePaymentOptions["amount"];
74
+ };
64
75
  /** Enable the MCP OAuth 2.1 + Dynamic Client Registration proxy, so MCP
65
76
  * clients (Claude Desktop, Claude.ai) can connect without an API key. When
66
77
  * set, the authorization_code + refresh_token grants are advertised, the
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
@@ -78,7 +78,19 @@ export function createBilling(opts) {
78
78
  };
79
79
  const dispatcher = createDispatcher(register);
80
80
  const restList = createToolListHandler({ dispatcher, toolCosts: opts.toolCosts });
81
- const restDispatch = createToolDispatchHandler({ dispatcher, realm: opts.realm, resourceMetadata });
81
+ // The payment gate, referenced lazily because it is composed further down (and only
82
+ // ever called at request time). Wiring it HERE is what makes `billing.restDispatch`
83
+ // answer an empty wallet with an offer instead of a dead end — the consumer gets it by
84
+ // configuring `machinePayment`, not by wrapping the handler.
85
+ const payment = opts.machinePayment
86
+ ? { requirePayment: (request) => machinePayment.requirePayment(request) }
87
+ : undefined;
88
+ const restDispatch = createToolDispatchHandler({
89
+ dispatcher,
90
+ realm: opts.realm,
91
+ resourceMetadata,
92
+ payment,
93
+ });
82
94
  const mcp = createMcpTransport({
83
95
  register,
84
96
  adapter: opts.adapter,
@@ -121,6 +133,15 @@ export function createBilling(opts) {
121
133
  const machinePayment = opts.machinePayment
122
134
  ? createMachinePaymentHandler({
123
135
  ...opts.machinePayment,
136
+ // Priced from the rate card this composition already holds: the tool being called
137
+ // names itself in the path (`/api/v0/<tool>`), so an agent is challenged for what
138
+ // that call actually costs. Anything unrecognised falls back to 1 — a challenge
139
+ // for a small wrong amount beats one for 0, which would mean nothing.
140
+ amount: opts.machinePayment.amount ??
141
+ ((request) => {
142
+ const tool = new URL(request.url).pathname.split("/").filter(Boolean).pop() ?? "";
143
+ return opts.toolCosts?.[tool] || 1;
144
+ }),
124
145
  onPaid: async (challenge, receipt, request) => {
125
146
  if (opts.machinePayment?.creditWallet) {
126
147
  const orgId = await orgForRequest(request);
@@ -177,7 +198,7 @@ export function createBilling(opts) {
177
198
  })
178
199
  : undefined;
179
200
  const meterRequest = meter
180
- ? createApiMeterGuard(opts.adapter, meter, { realm: opts.realm })
201
+ ? createApiMeterGuard(opts.adapter, meter, { realm: opts.realm, payment })
181
202
  : undefined;
182
203
  // Every org-scoped library function, with adapter/config/plans/ledger/resolvePlan
183
204
  // already applied. This is what removes the ~40 hand-written pass-throughs each
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAoC,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAuB,MAAM,qBAAqB,CAAC;AACtF,OAAO,EACL,gBAAgB,EAChB,eAAe,GAKhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAA8B,MAAM,4BAA4B,CAAC;AACtH,OAAO,EAAE,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAgHhD,MAAM,UAAU,aAAa,CAAC,IAA0B;IACtD,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE5C,6EAA6E;IAC7E,sDAAsD;IACtD,uFAAuF;IACvF,IAAI,YAA4D,CAAC;IACjE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;QAChC,CAAC,CAAC,gBAAgB,CAAC;YACf,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACpD,OAAO,EACL,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAChE,IAAI,CAAC,SAAS,EAAE,OAAO;YACzB,oEAAoE;YACpE,yDAAyD;YACzD,UAAU,EAAE,GAAG,EAAE,CACf,YAAY;gBACV,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC,gBAAgB,EAAE;gBACnE,CAAC,CAAC,SAAS;SAChB,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS;QAC9B,CAAC,CAAC,eAAe,CAAC;YACd,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,QAAQ;YAChB,GAAG,IAAI,CAAC,SAAS;YACjB,wEAAwE;YACxE,sEAAsE;YACtE,kDAAkD;YAClD,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC;oBACE,MAAM,EAAE;wBACN,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;wBACxB,eAAe,EAAE;4BACf,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,IAAI,EAAE,CAAC;4BACjD,GAAG,UAAU,CAAC,UAAU;yBACzB;qBACF;oBACD,eAAe,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,CAAC;wBACtC,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC;qBAClC,CAAC;iBACH;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,YAAY,GAAG,SAAS,CAAC;IACzB,MAAM,gBAAgB,GAAG,SAAS;QAChC,CAAC,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC;QAC9D,CAAC,CAAC,SAAS,CAAC;IAEd,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,QAAQ,GAAG,CAAC,MAAiB,EAAE,EAAE;QACrC,oBAAoB,CAAC,MAAM,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,WAAW;YACxD,iFAAiF;YACjF,mFAAmF;YACnF,+EAA+E;YAC/E,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClF,oFAAoF;IACpF,oFAAoF;IACpF,uFAAuF;IACvF,6DAA6D;IAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc;QACjC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,cAAe,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QACnF,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,YAAY,GAAG,yBAAyB,CAAC;QAC7C,UAAU;QACV,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,gBAAgB;QAChB,OAAO;KACR,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,kBAAkB,CAAC;QAC7B,QAAQ;QACR,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY;QACpC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW;QAClC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW;QAClC,gBAAgB;KACjB,CAAC,CAAC;IACH,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,KAAK,KAAK;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,0BAA0B,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACvB,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SACtD,CAAC,CAAC;IAET;;;;;;;OAOG;IACH,MAAM,aAAa,GAAG,KAAK,EAAE,OAAgB,EAA0B,EAAE;QACvE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;QACzE,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC;IACrF,CAAC,CAAC;IAEF,0EAA0E;IAC1E,EAAE;IACF,wFAAwF;IACxF,yFAAyF;IACzF,yFAAyF;IACzF,oFAAoF;IACpF,sFAAsF;IACtF,oEAAoE;IACpE,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc;QACxC,CAAC,CAAC,2BAA2B,CAAC;YAC1B,GAAG,IAAI,CAAC,cAAc;YACtB,kFAAkF;YAClF,kFAAkF;YAClF,gFAAgF;YAChF,sEAAsE;YACtE,MAAM,EACJ,IAAI,CAAC,cAAc,CAAC,MAAM;gBAC1B,CAAC,CAAC,OAAgB,EAAE,EAAE;oBACpB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBAClF,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrC,CAAC,CAAC;YACJ,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;gBAC5C,IAAI,IAAI,CAAC,cAAc,EAAE,YAAY,EAAE,CAAC;oBACtC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAClF,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM,YAAY,CAChB,UAAU,EACV,SAAS,CAAC,MAAM,EAChB,oBAAoB,SAAS,CAAC,MAAM,aAAa,SAAS,CAAC,MAAM,GAAG,EACpE,SAAS,CAAC,QAAQ;wBAClB,wEAAwE;wBACxE,sEAAsE;wBACtE,cAAc,SAAS,CAAC,EAAE,EAAE,CAC7B,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACnE,CAAC;SACF,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc;QACnC,CAAC,CAAC,eAAe,CAAC;YACd,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,IAAI,cAAc;YACnE,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO;YACpC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SAC5D,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,4EAA4E;IAC5E,EAAE;IACF,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,0EAA0E;IAC1E,uDAAuD;IACvD,EAAE;IACF,+EAA+E;IAC/E,yEAAyE;IACzE,8EAA8E;IAC9E,gFAAgF;IAChF,+CAA+C;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,kBAAkB,EAAE,CAAC;IAE1D,6EAA6E;IAC7E,iFAAiF;IACjF,8EAA8E;IAC9E,0EAA0E;IAE1E,gFAAgF;IAChF,kEAAkE;IAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;QACtB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,WAAW,EACT,IAAI,CAAC,KAAK,CAAC,WAAW;gBACtB,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE,CACvB,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;YAC/D,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;YACrC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;YACzC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,MAAM;SACP,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,YAAY,GAAG,KAAK;QACxB,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QAC1E,CAAC,CAAC,SAAS,CAAC;IAEd,kFAAkF;IAClF,gFAAgF;IAChF,iFAAiF;IACjF,gFAAgF;IAChF,MAAM,GAAG,GAAG,cAAc,CAAC;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM;QACN,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,WAAW;KACzD,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,QAAQ;QAChB;;;;;;;;;;;;;;;;;;;;;;;WAuBG;QACH,GAAG,EAAE;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK;YACpE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;SACE;QACpD,2FAA2F;QAC3F,GAAG;QACH,QAAQ;QACR,UAAU;QACV,2FAA2F;QAC3F,GAAG;QACH,qCAAqC;QACrC,QAAQ;QACR,4CAA4C;QAC5C,YAAY;QACZ,mEAAmE;QACnE,OAAO;QACP;wDACgD;QAChD,KAAK;QACL;qFAC6E;QAC7E,YAAY;QACZ,sEAAsE;QACtE,SAAS;QACT,4GAA4G;QAC5G,cAAc;QACd,gFAAgF;QAChF,SAAS;QACT;;mFAE2E;QAC3E,KAAK,EAAE,UAAU;YACf,CAAC,CAAC;gBACE,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,KAAK,EAAE,UAAU,CAAC,KAAK;aACxB;YACH,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
@@ -117,5 +117,19 @@ export type ApiMeterGuard<R extends Record<string, number>> = (req: Request, act
117
117
  }) => Promise<Response | null>;
118
118
  export declare function createApiMeterGuard<R extends Record<string, number>>(adapter: BillingAdapter, meter: Meter<R>, cfg?: {
119
119
  realm?: string;
120
+ /**
121
+ * The MPP gate, when the app accepts machine payments. A money refusal (never a
122
+ * waitable one) is re-issued as a `WWW-Authenticate: Payment` challenge, and a
123
+ * caller that settles it is metered again — for real, because paying funds the
124
+ * meter rather than skipping it.
125
+ *
126
+ * The tool surface gets this from `createToolDispatchHandler`; this is the same
127
+ * offer for a route that is not a tool. Both consumers had written it by hand.
128
+ */
129
+ payment?: {
130
+ requirePayment(request: Request): Promise<Response | {
131
+ paid: true;
132
+ }>;
133
+ };
120
134
  }): ApiMeterGuard<R>;
121
135
  //# sourceMappingURL=metering.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metering.d.ts","sourceRoot":"","sources":["../src/metering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metering.d.ts","sourceRoot":"","sources":["../src/metering.ts"],"names":[],"mappings":"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"}
package/dist/metering.js CHANGED
@@ -140,7 +140,9 @@ export function createMeter(adapter, config, meterCfg) {
140
140
  }
141
141
  export function createApiMeterGuard(adapter, meter, cfg) {
142
142
  const realm = cfg?.realm ?? "api";
143
- return async function meterRequest(req, action, opts) {
143
+ // `retried` is internal — the public guard takes three arguments, and the fourth only
144
+ // exists so a paid retry cannot become a loop.
145
+ const meterRequest = async (req, action, opts, retried = false) => {
144
146
  const token = req.headers
145
147
  .get("authorization")
146
148
  ?.replace(/^Bearer\s+/i, "")
@@ -173,6 +175,14 @@ export function createApiMeterGuard(adapter, meter, cfg) {
173
175
  // remedy — an exhausted committed pool included, where the remedy is a conversation.
174
176
  const waitable = res.reason === "rate_limit_reached" || res.reason === "spend_limit_reached";
175
177
  const retryAfter = res.retryAt != null ? Math.max(1, Math.ceil((res.retryAt - Date.now()) / 1000)) : null;
178
+ // Money can lift this one, so offer to take it. Once: a caller whose settled
179
+ // payment still leaves the wallet short gets the ordinary 402, not a loop.
180
+ if (!waitable && cfg?.payment && !retried) {
181
+ const paid = await cfg.payment.requirePayment(req);
182
+ if (paid instanceof Response)
183
+ return paid;
184
+ return meterRequest(req, action, opts, true);
185
+ }
176
186
  return jsonResponse(waitable ? 429 : 402, {
177
187
  error: res.message ?? "Insufficient balance.",
178
188
  // Named, so a client can branch on the cause instead of parsing the sentence.
@@ -182,6 +192,7 @@ export function createApiMeterGuard(adapter, meter, cfg) {
182
192
  }
183
193
  return null;
184
194
  };
195
+ return (req, action, opts) => meterRequest(req, action, opts);
185
196
  }
186
197
  function jsonResponse(status, body, extraHeaders) {
187
198
  return new Response(JSON.stringify(body), {
@@ -1 +1 @@
1
- {"version":3,"file":"metering.js","sourceRoot":"","sources":["../src/metering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metering.js","sourceRoot":"","sources":["../src/metering.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,25 @@ export declare function createToolDispatchHandler(opts: {
28
28
  * the path that reads the real role.
29
29
  */
30
30
  principal?: (request: Request) => Principal | null | Promise<Principal | null>;
31
+ /**
32
+ * The MPP gate, when the app accepts machine payments. Turns the empty-wallet 402
33
+ * below into an OFFER: the same refusal comes back carrying a `WWW-Authenticate:
34
+ * Payment` challenge, and a caller that settles it has its call dispatched.
35
+ *
36
+ * This lives here because the 402 is written here. Both consumers had wrapped this
37
+ * handler to do it — clone the request, dispatch, look for a 402, call
38
+ * `requirePayment`, dispatch again — which is the same ten lines twice, in the one
39
+ * place where getting the retry wrong means either charging twice or serving for
40
+ * free. `createBilling` wires it automatically whenever `machinePayment` is
41
+ * configured.
42
+ *
43
+ * Only the money 402. A 429 is a rate or spend limit and no payment lifts either.
44
+ */
45
+ payment?: {
46
+ requirePayment(request: Request): Promise<Response | {
47
+ paid: true;
48
+ }>;
49
+ };
31
50
  }): (request: Request, ctx: {
32
51
  params: Promise<{
33
52
  tool: string;
@@ -1 +1 @@
1
- {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAO3E,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,IAAI,MAAM,EAAE,CAAC;CAC1B;AAQD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,IACe,SAAS,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC,CAanD;AAUD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;IAC3D;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;CAChF,IAGG,SAAS,OAAO,EAChB,KAAK;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,KACzC,OAAO,CAAC,QAAQ,CAAC,CAsDrB"}
1
+ {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAO3E,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,IAAI,MAAM,EAAE,CAAC;CAC1B;AAQD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,IACe,SAAS,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC,CAanD;AAUD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;IAC3D;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAC/E;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,EAAE;QACR,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG;YAAE,IAAI,EAAE,IAAI,CAAA;SAAE,CAAC,CAAC;KACtE,CAAC;CACH,IAGG,SAAS,OAAO,EAChB,KAAK;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,KACzC,OAAO,CAAC,QAAQ,CAAC,CAmErB"}
@@ -40,9 +40,12 @@ export function createToolDispatchHandler(opts) {
40
40
  // One store either way: `runWithPrincipal` sets the same `authHeader` plus the
41
41
  // caller, so `enforceAccess` behaves identically and only `enforceAdmin` sees more.
42
42
  const withContext = (fn) => principal ? runWithPrincipal({ authHeader, principal }, fn) : runWithAuth(authHeader, fn);
43
+ // Read the body ONCE, up front. The paid retry below re-dispatches, and a Request
44
+ // body can only be read once — parsing here (rather than cloning the request) is
45
+ // what makes the retry a plain second call with the same arguments.
46
+ const body = (await request.json().catch(() => ({})));
43
47
  return withContext(async () => {
44
48
  try {
45
- const body = await request.json().catch(() => ({}));
46
49
  const result = await opts.dispatcher.dispatchTool(tool, body);
47
50
  if (result && typeof result === "object" && result.status === "try_again_later") {
48
51
  const retryAfter = result.retry_after_seconds;
@@ -80,6 +83,17 @@ export function createToolDispatchHandler(opts) {
80
83
  : message.includes("Unknown tool")
81
84
  ? 404
82
85
  : 500;
86
+ // An empty wallet is the one refusal a payment can lift, so offer to take one.
87
+ // Paid, the wallet was credited (`creditWallet`) and the call is dispatched
88
+ // again — properly metered, because paying funds the meter rather than skipping
89
+ // it. Unpaid, the caller holds the challenge instead of a dead end.
90
+ if (status === 402 && opts.payment) {
91
+ const paid = await opts.payment.requirePayment(request);
92
+ if (paid instanceof Response)
93
+ return paid;
94
+ const result = await opts.dispatcher.dispatchTool(tool, body);
95
+ return Response.json(result);
96
+ }
83
97
  return Response.json({ error: message }, { status });
84
98
  }
85
99
  });
@@ -1 +1 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAkB,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAWrD,SAAS,OAAO,CAAC,KAAa,EAAE,gBAAyB;IACvD,MAAM,IAAI,GAAG,iBAAiB,KAAK,0BAA0B,CAAC;IAC9D,OAAO,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,wBAAwB,gBAAgB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,qBAAqB,CAAC,IAGrC;IACC,OAAO,KAAK,EAAE,OAAgB,EAAqB,EAAE;QACnD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxD,OAAO,WAAW,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YACxC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC7C,OAAO,QAAQ,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBAC1E,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACrG,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAe;IAC3C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,CAAC,GAAG,MAAmE,CAAC;IAC9E,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1D,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,IAqBzC;IACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC;IAC5C,OAAO,KAAK,EACV,OAAgB,EAChB,GAA0C,EACvB,EAAE;QACrB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;QAClC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxD,MAAM,EAAE,GACN,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACvG,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,+EAA+E;QAC/E,oFAAoF;QACpF,MAAM,WAAW,GAAG,CAAI,EAAW,EAAK,EAAE,CACxC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC5F,OAAO,WAAW,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,IAA+B,CAAC,CAAC;gBACzF,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAK,MAA8B,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;oBACzG,MAAM,UAAU,GAAI,MAA2C,CAAC,mBAAmB,CAAC;oBACpF,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE;wBAC3B,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;qBACxE,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrG,CAAC;gBACD,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,IAAI,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjH,CAAC;gBACD,2EAA2E;gBAC3E,4EAA4E;gBAC5E,uEAAuE;gBACvE,sEAAsE;gBACtE,0EAA0E;gBAC1E,gEAAgE;gBAChE,+EAA+E;gBAC/E,8EAA8E;gBAC9E,+EAA+E;gBAC/E,2EAA2E;gBAC3E,MAAM,MAAM,GACV,GAAG,YAAY,mBAAmB;oBAChC,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC;wBACzC,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC;4BACtC,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gCAChC,CAAC,CAAC,GAAG;gCACL,CAAC,CAAC,GAAG,CAAC;gBAChB,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arnaudjnn/billing-tools",
3
- "version": "21.0.0",
3
+ "version": "21.1.0",
4
4
  "description": "The get-paid engine for Stripe + WorkOS apps, for humans and AI agents. Drop-in API-key auth, credit + subscription billing, auth.md agent registration, and MPP machine payments, as MCP tools, a REST API, and a CLI. Framework-agnostic, storage-pluggable.",
5
5
  "license": "MIT",
6
6
  "author": "Arnaud Jeannin",