What changed, and why it matters
This commit only updates translation strings in a single C# file. It adds, removes, and reorders user-facing text labels (for example, new labels for subscription dates and recovery codes). There are no code logic changes, no security fixes, and no functional behavior changes visible in the diff.
No security action needed. Treat as a routine localization update.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff is limited to BTCPayServer/Plugins/Translations/Translations.Default.cs, which contains a static dictionary of default translation keys/values. Changes include adding new translation entries (e.g., ‘Edit dates’, ‘Expiration’, ‘Generate new recovery codes’, ‘Remove subscriber’), removing a few obsolete entries (e.g., ‘Create temporary file link’, ‘Time must be at least 1’), and reordering some entries alphabetically. No executable code, validation logic, API endpoints, or security controls were modified.
Changed components
BTCPayServer/Plugins/Translations/Translations.Default.csInspect captured patch +21 / −3
diff --git a/BTCPayServer/Plugins/Translations/Translations.Default.cs b/BTCPayServer/Plugins/Translations/Translations.Default.cs
index a43a4b2..7442a67 100644
--- a/BTCPayServer/Plugins/Translations/Translations.Default.cs
+++ b/BTCPayServer/Plugins/Translations/Translations.Default.cs
@@ -415,7 +415,6 @@ namespace BTCPayServer.Plugins.Translations
"Create role": "",
"Create Store": "",
"Create template from selected store": "",
- "Create temporary file link": "",
"Create Token": "",
"Create Webhook": "",
"Create your account": "",
@@ -578,6 +577,7 @@ namespace BTCPayServer.Plugins.Translations
"Easily filter the different items using categories, used only in the product list with cart.": "",
"Easily log into BTCPay Server on another device using a simple login code from an already authenticated device.": "",
"Edit": "",
+ "Edit dates": "",
"Edit Field": "",
"Edit Form": "",
"Edit Item": "",
@@ -588,6 +588,8 @@ namespace BTCPayServer.Plugins.Translations
"Edit plan ({0})": "",
"Edit pull payment": "",
"Edit Pull Payment": "",
+ "Edit Subscription Dates": "",
+ "Editing dates for": "",
"Editor": "",
"Either your {0} wallet is not configured, or it is not a hot wallet. This processor cannot function until a hot wallet is configured in your store.": "",
"Email": "",
@@ -654,7 +656,9 @@ namespace BTCPayServer.Plugins.Translations
"Error updating user": "",
"Error while broadcasting: {0}": "",
"Example": "",
+ "Expiration": "",
"Expiration Date": "",
+ "Expiration date must be after the start date.": "",
"Expire": "",
"Expire invoice in …": "",
"Expired": "",
@@ -737,6 +741,7 @@ namespace BTCPayServer.Plugins.Translations
"Generate another address": "",
"Generate API Key": "",
"Generate Key": "",
+ "Generate new recovery codes": "",
"Generated Code": "",
"Get Link": "",
"Give other registered BTCPay Server users access to your store. See the {0} for granted permissions.": "",
@@ -747,6 +752,7 @@ namespace BTCPayServer.Plugins.Translations
"Grace": "",
"Grace Period": "",
"Grace Period (days)": "",
+ "Grace period and reminder date are recalculated automatically from plan settings.\n Leave blank for lifetime plans.": "",
"Greater than": "",
"Greenfield API": "",
"Greenfield API Keys": "",
@@ -836,7 +842,9 @@ namespace BTCPayServer.Plugins.Translations
"Invalid payout method": "",
"Invalid PSBT": "",
"Invalid role": "",
+ "Invalid start date provided.": "",
"Invalid store": "",
+ "Invalid timezone offset.": "",
"Invalid wallet format: {0}": "",
"Invalidates the current authenticator configuration. Useful if you believe your authenticator settings were compromised.": "",
"Inventory": "",
@@ -954,6 +962,7 @@ namespace BTCPayServer.Plugins.Translations
"Mark as settled": "",
"Marked for deletion": "",
"Marked for enabling": "",
+ "Marked for update": "",
"Master fingerprint": "",
"Max": "",
"Max sats": "",
@@ -1082,6 +1091,7 @@ namespace BTCPayServer.Plugins.Translations
"Open in wallet": "",
"Optimistic activation": "",
"optional": "",
+ "Optional note about this transaction": "",
"Optional passphrase (BIP39)": "",
"Optional seed passphrase": "",
"Optional: Specify the percentage by which to reduce the refund, e.g. as processing charge or to compensate for the mining fee.": "",
@@ -1339,6 +1349,7 @@ namespace BTCPayServer.Plugins.Translations
"Remove Store Permission": "",
"Remove store template": "",
"Remove store user": "",
+ "Remove subscriber": "",
"Remove the translation from this dictionary.": "",
"Remove wallet": "",
"Removing this user would result in the store having no owner.": "",
@@ -1418,6 +1429,7 @@ namespace BTCPayServer.Plugins.Translations
"Schedule install": "",
"Schedule transaction": "",
"Schedule update": "",
+ "Scheduled plan change cancelled.": "",
"Scope": "",
"Scripting": "",
"Search": "",
@@ -1425,8 +1437,8 @@ namespace BTCPayServer.Plugins.Translations
"Search by email...": "",
"Search by Id, Title or Amount...": "",
"Search engines can index this site": "",
- "Search…": "",
"Search labels…": "",
+ "Search…": "",
"seconds": "",
"Secure your recovery phrase": "",
"Security device (FIDO2)": "",
@@ -1590,12 +1602,14 @@ namespace BTCPayServer.Plugins.Translations
"Submit": "",
"Subscriber": "",
"Subscriber '{0}' successfully created": "",
+ "Subscriber {0} deleted": "",
"Subscriber {0} has been charged": "",
"Subscriber {0} has been credited": "",
"Subscriber {0} is now {1}": "",
"Subscriber {0} is now suspended": "",
"Subscriber {0} is now unsuspended": "",
"Subscribers": "",
+ "Subscription dates updated for {0}": "",
"Subscriptions": "",
"Subtotal": "",
"Subtract fees from amount": "",
@@ -1773,6 +1787,7 @@ namespace BTCPayServer.Plugins.Translations
"This account has been locked out. Please try again": "",
"This action is permanent and will remove the ability to change the SSH settings via the BTCPay Server user interface.": "",
"This action will delete your rate script. Are you sure to turn off rate rules scripting?": "",
+ "This action will generate new recovery codes for your account. Please confirm to proceed.": "",
"This action will modify your current rate sources. Are you sure to turn on rate rules scripting? (Advanced users)": "",
"This action will permanently delete your LND seed and password. You will not be able to recover them if you don't have a backup.": "",
"This action will permanently delete your LND seed and password. You will not be able to recover them if you don't have a backup. Are you sure?": "",
@@ -1780,8 +1795,10 @@ namespace BTCPayServer.Plugins.Translations
"This action will prevent the user from accessing this store and its settings. Are you sure?": "",
"This action will remove the plan <b>{0}</b>.": "",
"This action will remove the rule with the trigger <b>{0}</b>.": "",
+ "This action will remove the subscriber <b>{0}</b>.": "",
"This action will remove this plan. Are you sure?": "",
"This action will remove this rule. Are you sure?": "",
+ "This action will remove this subscriber. Are you sure?": "",
"This app will be removed from this store.": "",
"This can be overridden at the Store level.": "",
"This card is already configured for another issuer": "",
@@ -1833,7 +1850,6 @@ namespace BTCPayServer.Plugins.Translations
"This will send notification mails to the recipient, as configured by the <a href=\"{0}\">email rules</a>.": "",
"Those initial settings can be modified later.": "",
"Threshold": "",
- "Time must be at least 1": "",
"Timestamp": "",
"Tip": "",
"Tip percentage amounts (comma separated)": "",
@@ -1870,6 +1886,7 @@ namespace BTCPayServer.Plugins.Translations
"Total Sales": "",
"Transaction": "",
"Transaction broadcasted successfully ({0})": "",
+ "Transaction Comment": "",
"Transaction fee": "",
"Transaction fee rate:": "",
"Transaction Id": "",
@@ -2096,6 +2113,7 @@ namespace BTCPayServer.Plugins.Translations
"Your password has been set by the user who invited you.": "",
"Your password has been set.": "",
"Your plan does not allow you to log in.": "",
+ "Your plan will change at the end of your current billing period.": "",
"Your profile has been updated": "",
"Your subscription is not active.": "",
"Your subscription is suspended. {0}": "",
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.