Fix: Disable zero amount invoices in PoS doesn't show for Keypad (#7071)
What changed, and why it matters
This commit is a simple user-interface fix: it moves a checkbox setting ('Disable zero amount invoices') so it appears in the correct section of the Point of Sale settings page. The setting was previously only shown under the 'Keypad' section, but it should be visible for all Point of Sale types. There is no security issue here.
No security action required. Treat as a normal UI bug fix.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The change relocates the HTML form group for DisableZeroAmountInvoice from inside the keypad-display fieldset to the preceding checkout-display fieldset in UpdatePointOfSale.cshtml. This is a Razor view-only change (4 lines added, 4 lines removed) with no controller, model, validation, or backend logic modifications. It makes a configuration option visible in the general checkout settings rather than only when the keypad display is selected.
Changed components
BTCPayServer/Views/Shared/PointOfSale/UpdatePointOfSale.cshtmlInspect captured patch +4 / −4
diff --git a/BTCPayServer/Views/Shared/PointOfSale/UpdatePointOfSale.cshtml b/BTCPayServer/Views/Shared/PointOfSale/UpdatePointOfSale.cshtml
index 66a744e..7c2d68e 100644
--- a/BTCPayServer/Views/Shared/PointOfSale/UpdatePointOfSale.cshtml
+++ b/BTCPayServer/Views/Shared/PointOfSale/UpdatePointOfSale.cshtml
@@ -122,6 +122,10 @@
<select asp-for="FormId" class="form-select w-auto" asp-items="@checkoutFormOptions"></select>
<span asp-validation-for="FormId" class="text-danger"></span>
</div>
+ <div class="form-group d-flex align-items-center">
+ <input asp-for="DisableZeroAmountInvoice" type="checkbox" class="btcpay-toggle me-3"/>
+ <label asp-for="DisableZeroAmountInvoice" class="form-check-label"></label>
+ </div>
</fieldset>
<fieldset id="keypad-display" class="mt-2">
<legend class="h5 mb-3 fw-semibold" text-translate="true">Keypad</legend>
@@ -203,10 +207,6 @@
<span asp-validation-for="CustomButtonText" class="text-danger"></span>
</div>
</div>
- <div class="form-group d-flex align-items-center">
- <input asp-for="DisableZeroAmountInvoice" type="checkbox" class="btcpay-toggle me-3"/>
- <label asp-for="DisableZeroAmountInvoice" class="form-check-label"></label>
- </div>
</fieldset>
</div>
</div>
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.