From e2ca38a1088a0ec0595432726b2e708b14a811ea Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Mon, 21 Sep 2026 08:16:00 -0700 Subject: Point of sale: a bill, an optional tip prompt, one invoice, and a ledger that keeps tips apart. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A new deferred feature (src/features/pos.js): type the amount in the display unit, optionally a note, Charge. With the tip prompt on, the customer sees the bill and picks a percentage (configurable, default 10/15/20), their own figure, or no tip; one Lightning invoice is made for the total through the Ark feature's receive (new hooks arkLnInvoice/arkLnWatch/arkLnUnwatch/ arkLnCancel wrap createLnInvoice and pollArkLn). Paid, expired and cancelled sales are recorded with the bill and the tip as separate figures, and the fiat rate at the time; the amount screen shows today's bills, tips and total. Doors: Settings → Payments card, and a button under the payment address on Receive (a receiveExtras hook the names pane renders). Co-Authored-By: Claude Fable 5.1 --- src/features/names.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/features/names.js') diff --git a/src/features/names.js b/src/features/names.js index f05ac09..0024847 100644 --- a/src/features/names.js +++ b/src/features/names.js @@ -588,7 +588,8 @@ export function namesFeature(ctx) { onClick: () => copy(addr), html: '', }))), - moreSection()); + moreSection(), + (ctx.hook && ctx.hook('receiveExtras')) || null); } // ---- BOLT 12 offers with a memo ---------------------------------------- -- cgit v1.2.3