AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 21 Bitcoin

Add editable invoice comments (#7444)

Public commit record

What the developer wrote

Authored by dstrukt

86/100 · Strong
Add editable invoice comments (#7444)

* Add editable invoice comment metadata and include it in the invoices report export

* Add invoice comment viewing and editing to the details page and invoice list

* Test invoice comment saving, list view, and export

* Use SQL rather than EF

* Add comment to the greenfield API

---------

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
The short version

What changed, and why it matters

This commit adds a new editable comment field to BTCPay Server invoices. Store staff can add private notes to invoices through the web interface or API, and these comments appear in invoice reports. The change is a normal feature addition, not a security fix. There is no indication in the commit that it addresses any vulnerability or security incident.

Recommended action

No immediate security action required; treat as routine feature review. If auditing, verify that Razor output encoding and API JSON serialization safely handle comment content, and confirm that removing storeId from UpdateInvoiceMetadata does not bypass authorization in any caller. Consider adding length limits and anti-XSS tests for the comment field.

Security signals we found

01

New user-supplied string persisted to database and rendered in admin views/API responses

02

Raw SQL update into jsonb Blob2 column bypasses EF change tracking

03

UpdateInvoiceMetadata signature changed; deprecated overload ignores storeId, potentially widening access if callers relied on store-scoped enforcement

04

SearchString timezone conversion changed to ToUniversalTime for DateTimeKind.Local (behavior change, not clearly security-relevant)

Risk score

Why this scored 21/100

Our methodology →
Potential impact 2/30
Exploitability 3/25
Stealth signal 2/15
Affected reach 4/15
Confidence 7/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.