You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refunds: Employees without permission to create approved pull payments can no longer auto-approve invoice overpayment refunds; another user must approve the payout (#7649) @NicolasDorier
Invoices: Hide checkout, status, and receipt information from public endpoints one month after monitoring ends; users with invoice-view permission retain access (#7651) @NicolasDorier
New features
Greenfield: Add APIs for discovering and running store reports (#7608) @NicolasDorier
Plugins: Simplify registering and migrating plugin-owned EF Core database contexts (#7611) @NicolasDorier
Invoices: Add the btcpay.store.canmanageinvoicestatus permission for marking invoices as settled or invalid (#7643) @NicolasDorier
Access Tokens: Add the btcpay.store.canmanagelegacyaccesstokens permission for managing legacy BitPay-compatible tokens and pairing requests (#7502#7612#7631) @okjodom@NicolasDorier
Lightning: Persist replacement invoices before canceling previous invoices to keep payments available when replacement fails (#7630) @NicolasDorier
Lightning: Use LND's WebSocket invoice subscription instead of long polling (#7621) @NicolasDorier
Lightning: Use only the authorized store when redisplaying setup and settings forms (#7618) @Team1-dev
Generated links: Use the configured server Base URL for account, password-reset, and store-invitation links, and reject non-HTTP(S) Base URLs (#7590#7628) @NicolasDorier
Store settings: Accept only absolute HTTP or HTTPS Store Website URLs in the UI and Greenfield API (#7604) @NicolasDorier, reported by @gn00295120
API Keys: Show an error instead of a server error when confirming a removed API key (#7568#7570) @monasco
Access Tokens: Keep failed token revocations scoped to the authorized store (#7629) @NicolasDorier
Server users: Return Not Found instead of a server error when sending a verification email to a deleted user (#7571#7572) @monasco
Plugins: Run registered plugin database migrations reliably during startup (#7588) @NicolasDorier
Improvements
Invoices: Create invoices noticeably faster by avoiding unnecessary Lightning node and on-chain fee lookups (#7632#7633#7634) @NicolasDorier, reported by @bigg-bb
Access Tokens: Warn against using legacy BitPay-compatible tokens for new integrations (#7624) @NicolasDorier
Server settings: Organize administration pages into clearer labeled sections (#7501) @dstrukt
Server administration: Refresh btcpay-host deployment capabilities on SIGHUP without restarting BTCPay Server (#7576) @NicolasDorier
LND: Warn administrators when Docker's LND REST or gRPC endpoint is available but its reverse-proxy route is disabled (#7593) @NicolasDorier
Receipts: Show the original invoice amount alongside the amount paid on overpaid receipts (#7595#7597) @NicolasDorier
Documentation: Rewrite the plugin development guides to make plugins easier to build with coding agents (#7598) @NicolasDorier
Miscellaneous
Invoices: Deprecate invoice notification URLs in favor of webhooks and remove the notification URL from manual invoice creation (#7647) @NicolasDorier