commit e9a0a5339a292f130909329b1caaf5c4a1a2c706
parent e1b15434b132cf02a3d1321e7830fc3d0818ab6e
Author: Florian Dold <dold@taler.net>
Date: Thu, 10 Sep 2026 15:21:28 +0200
merchant web UI: translate template OTP device selection
Diffstat:
6 files changed, 569 insertions(+), 364 deletions(-)
diff --git a/packages/taler-merchant-webui/src/i18n/de-CH.po b/packages/taler-merchant-webui/src/i18n/de-CH.po
@@ -43,8 +43,8 @@ msgstr "Ladenkasse"
#: packages/taler-merchant-webui/src/ui/Menu.tsx:56
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:128
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:354
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:376
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:363
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:385
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:222
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:239
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:256
@@ -436,7 +436,7 @@ msgstr "Beispiele für Zeitangaben:"
#. Printed under the QR code, so it is translated and the amount is
#. formatted rather than left in the "CHF:5.00" protocol spelling.
#: packages/taler-merchant-webui/src/utils/templates.ts:38
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:235
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:245
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1396
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1452
msgid "A fixed amount"
@@ -559,7 +559,10 @@ msgstr "Anfrage fehlgeschlagen"
msgid ""
"This product is locked by a shopping cart or an unpaid order. Enable \"Force "
"deletion\" to release its locks and delete the product."
-msgstr "Dieses Produkt ist durch einen Warenkorb oder eine unbezahlte Bestellung gesperrt. Aktivieren Sie «Erzwungenes Löschen», um die Sperren aufzuheben und das Produkt zu löschen."
+msgstr ""
+"Dieses Produkt ist durch einen Warenkorb oder eine unbezahlte Bestellung "
+"gesperrt. Aktivieren Sie «Erzwungenes Löschen», um die Sperren aufzuheben "
+"und das Produkt zu löschen."
#: packages/taler-merchant-webui/src/utils/errors.ts:133
msgid ""
@@ -1275,7 +1278,7 @@ msgstr "Zahlungsdienst"
#: packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx:855
#: packages/taler-merchant-webui/src/ui/AmountInput.tsx:197
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:620
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:687
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:244
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:274
#: packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx:150
@@ -1443,7 +1446,7 @@ msgstr "Das Bankkonto konnte nicht entfernt werden"
#: packages/taler-merchant-webui/src/screens/InventoryScreen.tsx:921
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:895
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:311
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:778
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:845
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:493
#: packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx:60
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:593
@@ -1484,7 +1487,7 @@ msgstr "Ja, entfernen"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:352
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:691
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:143
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:373
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:288
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:382
#: packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx:115
@@ -2098,7 +2101,7 @@ msgstr "Der Firmenname, den Ihre Kundschaft auf den Belegen sieht."
#: packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx:763
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:845
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:550
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:562
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:832
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:900
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1814
@@ -2304,14 +2307,14 @@ msgstr "Ort (optional)"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:377
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:822
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:527
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:539
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1703
msgid "Hide advanced options"
msgstr "Erweiterte Optionen ausblenden"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:378
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:823
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1704
msgid "Show advanced options"
msgstr "Erweiterte Optionen anzeigen"
@@ -3594,7 +3597,7 @@ msgid "▼ Show"
msgstr "▼ Anzeigen"
#: packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx:122
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:572
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:639
msgid "Time to Pay"
msgstr "Zahlungsfrist"
@@ -3716,7 +3719,7 @@ msgstr "Geben Sie gültige Zeitspannen für die Bestellung ein."
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:916
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:363
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:219
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:230
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:379
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:495
msgid "Currency configuration is unavailable."
@@ -3777,14 +3780,14 @@ msgstr "Erweiterte Bearbeitung"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1195
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:475
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:384
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:393
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:964
msgid "Currency configuration could not be loaded"
msgstr "Die Währungskonfiguration konnte nicht geladen werden"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1199
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:479
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:388
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:397
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:968
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:953
msgid "Loading currency configuration…"
@@ -5242,7 +5245,7 @@ msgid "Minimum Age Restriction (in years)"
msgstr "Altersbeschränkung (in Jahren)"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:908
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:853
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:609
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1851
msgid "Saving..."
@@ -5346,91 +5349,91 @@ msgstr "Die Vorlage konnte nicht gelöscht werden"
msgid "🖨 Print Sheet"
msgstr "🖨 Blatt drucken"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:223
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:234
msgid "Enter a valid payment duration."
msgstr "Geben Sie eine gültige Zahlungsdauer ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:227
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:238
msgid "Please enter a template name."
msgstr "Bitte geben Sie einen Vorlagennamen ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:237
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:247
msgid "A fixed amount (%1$s)"
msgstr "Ein fester Betrag (%1$s)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:239
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:249
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1404
msgid "An amount the customer enters"
msgstr "Ein Betrag, den die Kundschaft eingibt"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:241
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:251
msgid "Products from your inventory"
msgstr "Produkte aus Ihrem Bestand"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:253
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:263
msgid "Enter a valid fixed amount in the selected currency."
msgstr "Geben Sie einen gültigen Festbetrag in der ausgewählten Währung ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:261
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:271
msgid "Enter a valid minimum age between 0 and 200."
msgstr "Geben Sie ein gültiges Mindestalter zwischen 0 und 200 ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:338
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:347
msgid "Failed to save template. Please check input parameters."
msgstr ""
"Die Vorlage konnte nicht gespeichert werden. Bitte prüfen Sie die Eingaben."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:355
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "Edit Template"
msgstr "Vorlage bearbeiten"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:356
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:378
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:365
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:387
msgid "Define reusable payment types, fixed-item orders, or donation QR codes."
msgstr ""
"Legen Sie wiederverwendbare Zahlungsarten, Bestellungen mit festen Artikeln "
"oder Spenden-QR-Codes fest."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:361
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:366
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:370
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:375
msgid "Template details could not be loaded"
msgstr "Vorlagendetails konnten nicht geladen werden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "New Template"
msgstr "Neue Vorlage"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:394
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:403
msgid "Could not save the template"
msgstr "Die Vorlage konnte nicht gespeichert werden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:401
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:410
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:360
msgid "1. What it Sells"
msgstr "1. Was verkauft wird"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:404
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
msgid "Choose how this template's orders are presented to customer wallets."
msgstr ""
"Wählen Sie, wie die Bestellungen dieser Vorlage den Wallets der Kundschaft "
"dargestellt werden."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:405
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
msgid "Kept as it is — this portal cannot change what this template sells."
msgstr ""
"Bleibt unverändert – dieses Portal kann nicht ändern, was die Vorlage "
"verkauft."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:422
msgid "🛍️ This template sells products from your inventory."
msgstr "🛍️ Diese Vorlage verkauft Produkte aus Ihrem Bestand."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:423
msgid "🌐 This template sells access to a website."
msgstr "🌐 Diese Vorlage verkauft Zugang zu einer Website."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:417
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:426
msgid ""
"Its settings for that were made elsewhere and are kept exactly as they are. "
"You can still change the name, the description, and the options below."
@@ -5438,21 +5441,21 @@ msgstr ""
"Die dortigen Einstellungen wurden anderswo gemacht und bleiben unverändert. "
"Name, Beschreibung und die Optionen unten können Sie weiterhin ändern."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:452
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:461
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:404
msgid "2. Template Details"
msgstr "2. Vorlagendetails"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:460
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:469
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:407
msgid "Template Name"
msgstr "Vorlagenname"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:466
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:475
msgid "e.g. Espresso Stand QR Code"
msgstr "z. B. QR-Code Espressostand"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:473
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:482
msgid ""
"What this template is for in your portal dashboard so you can identify it "
"later."
@@ -5460,15 +5463,15 @@ msgstr ""
"Wofür diese Vorlage in Ihrer Übersicht steht, damit Sie sie später "
"wiedererkennen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:481
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:490
msgid "What the customer sees (Order Summary)"
msgstr "Was die Kundschaft sieht (Bestellübersicht)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:486
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:495
msgid "e.g. Single Espresso Coffee"
msgstr "z. B. Espresso einfach"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:493
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:502
msgid ""
"The order description shown inside customer wallets. Leave blank to let the "
"customer describe it, optionally starting from a description you suggest "
@@ -5478,28 +5481,28 @@ msgstr ""
"lassen, damit die Kundschaft sie selbst schreibt, wahlweise ausgehend von "
"einem Vorschlag unten."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:499
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:508
msgid "Fixed Amount"
msgstr "Fester Betrag"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:506
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:518
msgid "Select currency and enter the fixed price charged for every order."
msgstr ""
"Wählen Sie die Währung und geben Sie den festen Preis je Bestellung ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:516
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
msgid "3. Advanced Options"
msgstr "3. Erweiterte Optionen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:517
-msgid "Template identifier, payment expiration, and age limits."
-msgstr "Kennung der Vorlage, Ablauf der Zahlung und Altersgrenzen."
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:529
+msgid "Template identifier, OTP device, payment expiration, and age limits."
+msgstr "Kennung der Vorlage, OTP-Gerät, Ablauf der Zahlung und Altersgrenzen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:552
msgid "Template Identifier (ID)"
msgstr "Kennung der Vorlage (ID)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:565
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:577
msgid ""
"Appears in web addresses and printed QR codes. Cannot be changed once "
"created."
@@ -5507,12 +5510,42 @@ msgstr ""
"Erscheint in Webadressen und gedruckten QR-Codes. Nach dem Anlegen nicht "
"änderbar."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:575
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:584
+msgid "OTP device"
+msgstr "OTP-Gerät"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:585
+msgid "Search devices by name or ID"
+msgstr "Geräte nach Name oder Kennung suchen"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:588
+msgid "Optional. Select the device used to verify payments from this template."
+msgstr ""
+"Optional. Wählen Sie das Gerät aus, mit dem Zahlungen aus dieser Vorlage "
+"überprüft werden."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:600
+msgid "No device"
+msgstr "Kein Gerät"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:621
+msgid "Loading devices…"
+msgstr "Geräte werden geladen …"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:626
+msgid "Devices could not be loaded"
+msgstr "Geräte konnten nicht geladen werden"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:632
+msgid "No OTP devices configured."
+msgstr "Es sind keine OTP-Geräte eingerichtet."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:642
msgid "How long the customer has to pay once they scan the QR code."
msgstr ""
"Wie lange die Kundschaft nach dem Scannen des QR-Codes zum Bezahlen hat."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:576
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:643
msgid ""
"How long the customer has to pay once they scan the QR code. Left alone, "
"orders follow your merchant account's deadline."
@@ -5520,36 +5553,36 @@ msgstr ""
"Wie lange die Kundschaft nach dem Scannen zum Bezahlen hat. Ohne Änderung "
"gilt die Frist Ihres Händlerkontos."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:591
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:658
msgid "Minimum Age Requirement"
msgstr "Mindestalter"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:608
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:675
msgid "Restricts who can pay. Leave at 0 for no restriction."
msgstr "Schränkt ein, wer zahlen darf. 0 bedeutet keine Einschränkung."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:636
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:703
msgid "Which currency this code charges in."
msgstr "In welcher Währung dieser Code kassiert."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:647
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:714
msgid "4. What the Customer Can Change"
msgstr "4. Was die Kundschaft ändern kann"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:649
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:716
msgid "Optional. Start the customer off with a value they can still change."
msgstr ""
"Optional. Geben Sie der Kundschaft einen Startwert, den sie noch ändern kann."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:660
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:727
msgid "Hide suggestions"
msgstr "Vorschläge ausblenden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:661
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:728
msgid "Show suggestions"
msgstr "Vorschläge anzeigen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:670
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:737
msgid ""
"Nothing is left to the customer — you fix both the amount and the "
"description above."
@@ -5557,34 +5590,34 @@ msgstr ""
"Der Kundschaft bleibt nichts überlassen – Sie legen oben Betrag und "
"Beschreibung fest."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:690
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:757
msgid "Suggest a starting amount"
msgstr "Startbetrag vorschlagen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:692
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:746
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:759
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:813
msgid "They see this filled in and can still change it."
msgstr "Sie sehen dies vorausgefüllt und können es noch ändern."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:719
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
msgid "Charged in the template currency, set under Advanced Options."
msgstr "Wird in der Währung der Vorlage berechnet, siehe erweiterte Optionen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:744
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:811
msgid "Suggest a description"
msgstr "Eine Beschreibung vorschlagen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:755
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:822
msgid "e.g. Donation to the animal shelter"
msgstr "z. B. Spende an das Tierheim"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:788
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:855
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1853
#: packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx:477
msgid "Save Changes"
msgstr "Änderungen speichern"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:789
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:856
msgid "Create Template"
msgstr "Vorlage erstellen"
diff --git a/packages/taler-merchant-webui/src/i18n/de.po b/packages/taler-merchant-webui/src/i18n/de.po
@@ -43,8 +43,8 @@ msgstr "Ladenkasse"
#: packages/taler-merchant-webui/src/ui/Menu.tsx:56
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:128
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:354
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:376
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:363
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:385
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:222
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:239
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:256
@@ -436,7 +436,7 @@ msgstr "Beispiele für Zeitangaben:"
#. Printed under the QR code, so it is translated and the amount is
#. formatted rather than left in the "CHF:5.00" protocol spelling.
#: packages/taler-merchant-webui/src/utils/templates.ts:38
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:235
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:245
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1396
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1452
msgid "A fixed amount"
@@ -559,7 +559,10 @@ msgstr "Anfrage fehlgeschlagen"
msgid ""
"This product is locked by a shopping cart or an unpaid order. Enable \"Force "
"deletion\" to release its locks and delete the product."
-msgstr "Dieses Produkt ist durch einen Warenkorb oder eine unbezahlte Bestellung gesperrt. Aktivieren Sie „Erzwungenes Löschen“, um die Sperren aufzuheben und das Produkt zu löschen."
+msgstr ""
+"Dieses Produkt ist durch einen Warenkorb oder eine unbezahlte Bestellung "
+"gesperrt. Aktivieren Sie „Erzwungenes Löschen“, um die Sperren aufzuheben "
+"und das Produkt zu löschen."
#: packages/taler-merchant-webui/src/utils/errors.ts:133
msgid ""
@@ -1275,7 +1278,7 @@ msgstr "Zahlungsdienst"
#: packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx:855
#: packages/taler-merchant-webui/src/ui/AmountInput.tsx:197
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:620
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:687
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:244
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:274
#: packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx:150
@@ -1443,7 +1446,7 @@ msgstr "Das Bankkonto konnte nicht entfernt werden"
#: packages/taler-merchant-webui/src/screens/InventoryScreen.tsx:921
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:895
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:311
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:778
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:845
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:493
#: packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx:60
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:593
@@ -1484,7 +1487,7 @@ msgstr "Ja, entfernen"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:352
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:691
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:143
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:373
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:288
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:382
#: packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx:115
@@ -2097,7 +2100,7 @@ msgstr "Der Firmenname, den Ihre Kundschaft auf den Belegen sieht."
#: packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx:763
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:845
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:550
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:562
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:832
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:900
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1814
@@ -2303,14 +2306,14 @@ msgstr "Ort (optional)"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:377
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:822
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:527
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:539
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1703
msgid "Hide advanced options"
msgstr "Erweiterte Optionen ausblenden"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:378
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:823
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1704
msgid "Show advanced options"
msgstr "Erweiterte Optionen anzeigen"
@@ -3592,7 +3595,7 @@ msgid "▼ Show"
msgstr "▼ Anzeigen"
#: packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx:122
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:572
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:639
msgid "Time to Pay"
msgstr "Zahlungsfrist"
@@ -3714,7 +3717,7 @@ msgstr "Geben Sie gültige Zeitspannen für die Bestellung ein."
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:916
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:363
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:219
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:230
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:379
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:495
msgid "Currency configuration is unavailable."
@@ -3775,14 +3778,14 @@ msgstr "Erweiterte Bearbeitung"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1195
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:475
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:384
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:393
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:964
msgid "Currency configuration could not be loaded"
msgstr "Die Währungskonfiguration konnte nicht geladen werden"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1199
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:479
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:388
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:397
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:968
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:953
msgid "Loading currency configuration…"
@@ -5240,7 +5243,7 @@ msgid "Minimum Age Restriction (in years)"
msgstr "Altersbeschränkung (in Jahren)"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:908
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:853
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:609
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1851
msgid "Saving..."
@@ -5344,91 +5347,91 @@ msgstr "Die Vorlage konnte nicht gelöscht werden"
msgid "🖨 Print Sheet"
msgstr "🖨 Blatt drucken"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:223
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:234
msgid "Enter a valid payment duration."
msgstr "Geben Sie eine gültige Zahlungsdauer ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:227
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:238
msgid "Please enter a template name."
msgstr "Bitte geben Sie einen Vorlagennamen ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:237
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:247
msgid "A fixed amount (%1$s)"
msgstr "Ein fester Betrag (%1$s)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:239
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:249
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1404
msgid "An amount the customer enters"
msgstr "Ein Betrag, den die Kundschaft eingibt"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:241
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:251
msgid "Products from your inventory"
msgstr "Produkte aus Ihrem Bestand"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:253
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:263
msgid "Enter a valid fixed amount in the selected currency."
msgstr "Geben Sie einen gültigen Festbetrag in der ausgewählten Währung ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:261
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:271
msgid "Enter a valid minimum age between 0 and 200."
msgstr "Geben Sie ein gültiges Mindestalter zwischen 0 und 200 ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:338
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:347
msgid "Failed to save template. Please check input parameters."
msgstr ""
"Die Vorlage konnte nicht gespeichert werden. Bitte prüfen Sie die Eingaben."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:355
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "Edit Template"
msgstr "Vorlage bearbeiten"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:356
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:378
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:365
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:387
msgid "Define reusable payment types, fixed-item orders, or donation QR codes."
msgstr ""
"Legen Sie wiederverwendbare Zahlungsarten, Bestellungen mit festen Artikeln "
"oder Spenden-QR-Codes fest."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:361
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:366
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:370
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:375
msgid "Template details could not be loaded"
msgstr "Vorlagendetails konnten nicht geladen werden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "New Template"
msgstr "Neue Vorlage"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:394
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:403
msgid "Could not save the template"
msgstr "Die Vorlage konnte nicht gespeichert werden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:401
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:410
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:360
msgid "1. What it Sells"
msgstr "1. Was verkauft wird"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:404
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
msgid "Choose how this template's orders are presented to customer wallets."
msgstr ""
"Wählen Sie, wie die Bestellungen dieser Vorlage den Wallets der Kundschaft "
"dargestellt werden."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:405
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
msgid "Kept as it is — this portal cannot change what this template sells."
msgstr ""
"Bleibt unverändert – dieses Portal kann nicht ändern, was die Vorlage "
"verkauft."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:422
msgid "🛍️ This template sells products from your inventory."
msgstr "🛍️ Diese Vorlage verkauft Produkte aus Ihrem Bestand."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:423
msgid "🌐 This template sells access to a website."
msgstr "🌐 Diese Vorlage verkauft Zugang zu einer Website."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:417
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:426
msgid ""
"Its settings for that were made elsewhere and are kept exactly as they are. "
"You can still change the name, the description, and the options below."
@@ -5436,21 +5439,21 @@ msgstr ""
"Die dortigen Einstellungen wurden anderswo gemacht und bleiben unverändert. "
"Name, Beschreibung und die Optionen unten können Sie weiterhin ändern."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:452
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:461
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:404
msgid "2. Template Details"
msgstr "2. Vorlagendetails"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:460
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:469
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:407
msgid "Template Name"
msgstr "Vorlagenname"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:466
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:475
msgid "e.g. Espresso Stand QR Code"
msgstr "z. B. QR-Code Espressostand"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:473
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:482
msgid ""
"What this template is for in your portal dashboard so you can identify it "
"later."
@@ -5458,15 +5461,15 @@ msgstr ""
"Wofür diese Vorlage in Ihrer Übersicht steht, damit Sie sie später "
"wiedererkennen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:481
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:490
msgid "What the customer sees (Order Summary)"
msgstr "Was die Kundschaft sieht (Bestellübersicht)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:486
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:495
msgid "e.g. Single Espresso Coffee"
msgstr "z. B. Espresso einfach"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:493
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:502
msgid ""
"The order description shown inside customer wallets. Leave blank to let the "
"customer describe it, optionally starting from a description you suggest "
@@ -5476,28 +5479,28 @@ msgstr ""
"lassen, damit die Kundschaft sie selbst schreibt, wahlweise ausgehend von "
"einem Vorschlag unten."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:499
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:508
msgid "Fixed Amount"
msgstr "Fester Betrag"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:506
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:518
msgid "Select currency and enter the fixed price charged for every order."
msgstr ""
"Wählen Sie die Währung und geben Sie den festen Preis je Bestellung ein."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:516
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
msgid "3. Advanced Options"
msgstr "3. Erweiterte Optionen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:517
-msgid "Template identifier, payment expiration, and age limits."
-msgstr "Kennung der Vorlage, Ablauf der Zahlung und Altersgrenzen."
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:529
+msgid "Template identifier, OTP device, payment expiration, and age limits."
+msgstr "Kennung der Vorlage, OTP-Gerät, Ablauf der Zahlung und Altersgrenzen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:552
msgid "Template Identifier (ID)"
msgstr "Kennung der Vorlage (ID)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:565
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:577
msgid ""
"Appears in web addresses and printed QR codes. Cannot be changed once "
"created."
@@ -5505,12 +5508,42 @@ msgstr ""
"Erscheint in Webadressen und gedruckten QR-Codes. Nach dem Anlegen nicht "
"änderbar."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:575
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:584
+msgid "OTP device"
+msgstr "OTP-Gerät"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:585
+msgid "Search devices by name or ID"
+msgstr "Geräte nach Name oder Kennung suchen"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:588
+msgid "Optional. Select the device used to verify payments from this template."
+msgstr ""
+"Optional. Wählen Sie das Gerät aus, mit dem Zahlungen aus dieser Vorlage "
+"überprüft werden."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:600
+msgid "No device"
+msgstr "Kein Gerät"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:621
+msgid "Loading devices…"
+msgstr "Geräte werden geladen …"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:626
+msgid "Devices could not be loaded"
+msgstr "Geräte konnten nicht geladen werden"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:632
+msgid "No OTP devices configured."
+msgstr "Es sind keine OTP-Geräte eingerichtet."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:642
msgid "How long the customer has to pay once they scan the QR code."
msgstr ""
"Wie lange die Kundschaft nach dem Scannen des QR-Codes zum Bezahlen hat."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:576
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:643
msgid ""
"How long the customer has to pay once they scan the QR code. Left alone, "
"orders follow your merchant account's deadline."
@@ -5518,36 +5551,36 @@ msgstr ""
"Wie lange die Kundschaft nach dem Scannen zum Bezahlen hat. Ohne Änderung "
"gilt die Frist Ihres Händlerkontos."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:591
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:658
msgid "Minimum Age Requirement"
msgstr "Mindestalter"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:608
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:675
msgid "Restricts who can pay. Leave at 0 for no restriction."
msgstr "Schränkt ein, wer zahlen darf. 0 bedeutet keine Einschränkung."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:636
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:703
msgid "Which currency this code charges in."
msgstr "In welcher Währung dieser Code kassiert."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:647
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:714
msgid "4. What the Customer Can Change"
msgstr "4. Was die Kundschaft ändern kann"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:649
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:716
msgid "Optional. Start the customer off with a value they can still change."
msgstr ""
"Optional. Geben Sie der Kundschaft einen Startwert, den sie noch ändern kann."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:660
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:727
msgid "Hide suggestions"
msgstr "Vorschläge ausblenden"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:661
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:728
msgid "Show suggestions"
msgstr "Vorschläge anzeigen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:670
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:737
msgid ""
"Nothing is left to the customer — you fix both the amount and the "
"description above."
@@ -5555,34 +5588,34 @@ msgstr ""
"Der Kundschaft bleibt nichts überlassen – Sie legen oben Betrag und "
"Beschreibung fest."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:690
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:757
msgid "Suggest a starting amount"
msgstr "Startbetrag vorschlagen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:692
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:746
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:759
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:813
msgid "They see this filled in and can still change it."
msgstr "Sie sehen dies vorausgefüllt und können es noch ändern."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:719
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
msgid "Charged in the template currency, set under Advanced Options."
msgstr "Wird in der Währung der Vorlage berechnet, siehe erweiterte Optionen."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:744
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:811
msgid "Suggest a description"
msgstr "Eine Beschreibung vorschlagen"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:755
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:822
msgid "e.g. Donation to the animal shelter"
msgstr "z. B. Spende an das Tierheim"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:788
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:855
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1853
#: packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx:477
msgid "Save Changes"
msgstr "Änderungen speichern"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:789
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:856
msgid "Create Template"
msgstr "Vorlage erstellen"
diff --git a/packages/taler-merchant-webui/src/i18n/fr.po b/packages/taler-merchant-webui/src/i18n/fr.po
@@ -43,8 +43,8 @@ msgstr "Caisse de comptoir"
#: packages/taler-merchant-webui/src/ui/Menu.tsx:56
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:128
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:354
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:376
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:363
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:385
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:222
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:239
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:256
@@ -428,7 +428,7 @@ msgstr "Exemples de format de durée :"
#. Printed under the QR code, so it is translated and the amount is
#. formatted rather than left in the "CHF:5.00" protocol spelling.
#: packages/taler-merchant-webui/src/utils/templates.ts:38
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:235
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:245
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1396
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1452
msgid "A fixed amount"
@@ -547,7 +547,9 @@ msgstr "Échec de la requête"
msgid ""
"This product is locked by a shopping cart or an unpaid order. Enable \"Force "
"deletion\" to release its locks and delete the product."
-msgstr "Ce produit est réservé dans un panier ou une commande impayée. Activez « Suppression forcée » pour lever ses réservations et supprimer le produit."
+msgstr ""
+"Ce produit est réservé dans un panier ou une commande impayée. Activez "
+"« Suppression forcée » pour lever ses réservations et supprimer le produit."
#: packages/taler-merchant-webui/src/utils/errors.ts:133
msgid ""
@@ -1264,7 +1266,7 @@ msgstr "Service de paiement"
#: packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx:855
#: packages/taler-merchant-webui/src/ui/AmountInput.tsx:197
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:620
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:687
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:244
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:274
#: packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx:150
@@ -1432,7 +1434,7 @@ msgstr "Le compte bancaire n’a pas pu être supprimé"
#: packages/taler-merchant-webui/src/screens/InventoryScreen.tsx:921
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:895
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:311
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:778
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:845
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:493
#: packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx:60
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:593
@@ -1473,7 +1475,7 @@ msgstr "Oui, le supprimer"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:352
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:691
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:143
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:373
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:288
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:382
#: packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx:115
@@ -2079,7 +2081,7 @@ msgstr "Le nom de l’entreprise que les clients voient sur leurs reçus."
#: packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx:763
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:845
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:550
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:562
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:832
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:900
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1814
@@ -2284,14 +2286,14 @@ msgstr "Ville (facultative)"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:377
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:822
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:527
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:539
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1703
msgid "Hide advanced options"
msgstr "Masquer les options avancées"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:378
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:823
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1704
msgid "Show advanced options"
msgstr "Afficher les options avancées"
@@ -3565,7 +3567,7 @@ msgid "▼ Show"
msgstr "▼ Afficher"
#: packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx:122
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:572
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:639
msgid "Time to Pay"
msgstr "Délai de paiement"
@@ -3688,7 +3690,7 @@ msgstr "Saisissez des durées de commande valides."
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:916
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:363
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:219
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:230
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:379
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:495
msgid "Currency configuration is unavailable."
@@ -3746,14 +3748,14 @@ msgstr "Modification avancée"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1195
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:475
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:384
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:393
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:964
msgid "Currency configuration could not be loaded"
msgstr "La configuration de la devise n’a pas pu être chargée"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1199
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:479
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:388
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:397
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:968
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:953
msgid "Loading currency configuration…"
@@ -5211,7 +5213,7 @@ msgid "Minimum Age Restriction (in years)"
msgstr "Restriction d'âge (en années)"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:908
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:853
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:609
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1851
msgid "Saving..."
@@ -5315,89 +5317,89 @@ msgstr "Le modèle n’a pas pu être supprimé"
msgid "🖨 Print Sheet"
msgstr "🖨 Imprimer la feuille"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:223
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:234
msgid "Enter a valid payment duration."
msgstr "Saisissez une durée de paiement valide."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:227
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:238
msgid "Please enter a template name."
msgstr "Veuillez saisir un nom de modèle."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:237
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:247
msgid "A fixed amount (%1$s)"
msgstr "Un montant fixe (%1$s)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:239
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:249
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1404
msgid "An amount the customer enters"
msgstr "Un montant saisi par le client"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:241
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:251
msgid "Products from your inventory"
msgstr "Produits de votre inventaire"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:253
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:263
msgid "Enter a valid fixed amount in the selected currency."
msgstr "Saisissez un montant fixe valide dans la devise sélectionnée."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:261
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:271
msgid "Enter a valid minimum age between 0 and 200."
msgstr "Saisissez un âge minimum valide compris entre 0 et 200."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:338
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:347
msgid "Failed to save template. Please check input parameters."
msgstr "Échec de l'enregistrement du modèle. Vérifiez les paramètres."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:355
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "Edit Template"
msgstr "Modifier le modèle"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:356
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:378
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:365
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:387
msgid "Define reusable payment types, fixed-item orders, or donation QR codes."
msgstr ""
"Définissez des types de paiement réutilisables, des commandes à article fixe "
"ou des codes QR de don."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:361
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:366
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:370
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:375
msgid "Template details could not be loaded"
msgstr "Les détails du modèle n’ont pas pu être chargés"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "New Template"
msgstr "Nouveau modèle"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:394
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:403
msgid "Could not save the template"
msgstr "Impossible d'enregistrer le modèle"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:401
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:410
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:360
msgid "1. What it Sells"
msgstr "1. Ce qu'il vend"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:404
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
msgid "Choose how this template's orders are presented to customer wallets."
msgstr ""
"Choisissez comment les commandes de ce modèle sont présentées dans les "
"portefeuilles des clients."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:405
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
msgid "Kept as it is — this portal cannot change what this template sells."
msgstr ""
"Conservé tel quel — ce portail ne peut pas changer ce que le modèle vend."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:422
msgid "🛍️ This template sells products from your inventory."
msgstr "🛍️ Ce modèle vend des produits de votre inventaire."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:423
msgid "🌐 This template sells access to a website."
msgstr "🌐 Ce modèle vend l'accès à un site web."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:417
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:426
msgid ""
"Its settings for that were made elsewhere and are kept exactly as they are. "
"You can still change the name, the description, and the options below."
@@ -5405,21 +5407,21 @@ msgstr ""
"Ses réglages ont été faits ailleurs et sont conservés tels quels. Vous "
"pouvez toujours modifier le nom, la description et les options ci-dessous."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:452
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:461
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:404
msgid "2. Template Details"
msgstr "2. Détails du modèle"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:460
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:469
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:407
msgid "Template Name"
msgstr "Nom du modèle"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:466
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:475
msgid "e.g. Espresso Stand QR Code"
msgstr "p. ex. code QR du stand espresso"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:473
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:482
msgid ""
"What this template is for in your portal dashboard so you can identify it "
"later."
@@ -5427,15 +5429,15 @@ msgstr ""
"À quoi sert ce modèle dans votre tableau de bord, pour le retrouver plus "
"tard."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:481
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:490
msgid "What the customer sees (Order Summary)"
msgstr "Ce que voit la clientèle (récapitulatif)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:486
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:495
msgid "e.g. Single Espresso Coffee"
msgstr "p. ex. Espresso simple"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:493
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:502
msgid ""
"The order description shown inside customer wallets. Leave blank to let the "
"customer describe it, optionally starting from a description you suggest "
@@ -5445,27 +5447,28 @@ msgstr ""
"vide pour qu'il le rédige, éventuellement à partir d'une suggestion ci-"
"dessous."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:499
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:508
msgid "Fixed Amount"
msgstr "Montant fixe"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:506
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:518
msgid "Select currency and enter the fixed price charged for every order."
msgstr "Choisissez la devise et saisissez le prix fixe de chaque commande."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:516
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
msgid "3. Advanced Options"
msgstr "3. Options avancées"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:517
-msgid "Template identifier, payment expiration, and age limits."
-msgstr "Identifiant du modèle, expiration du paiement et limites d'âge."
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:529
+msgid "Template identifier, OTP device, payment expiration, and age limits."
+msgstr ""
+"Identifiant du modèle, appareil OTP, expiration du paiement et limites d’âge."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:552
msgid "Template Identifier (ID)"
msgstr "Identifiant du modèle (ID)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:565
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:577
msgid ""
"Appears in web addresses and printed QR codes. Cannot be changed once "
"created."
@@ -5473,11 +5476,41 @@ msgstr ""
"Apparaît dans les adresses web et les codes QR imprimés. Non modifiable "
"ensuite."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:575
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:584
+msgid "OTP device"
+msgstr "Appareil OTP"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:585
+msgid "Search devices by name or ID"
+msgstr "Rechercher un appareil par nom ou identifiant"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:588
+msgid "Optional. Select the device used to verify payments from this template."
+msgstr ""
+"Facultatif. Sélectionnez l’appareil utilisé pour vérifier les paiements "
+"issus de ce modèle."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:600
+msgid "No device"
+msgstr "Aucun appareil"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:621
+msgid "Loading devices…"
+msgstr "Chargement des appareils…"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:626
+msgid "Devices could not be loaded"
+msgstr "Impossible de charger les appareils"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:632
+msgid "No OTP devices configured."
+msgstr "Aucun appareil OTP configuré."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:642
msgid "How long the customer has to pay once they scan the QR code."
msgstr "Combien de temps le client a pour payer après avoir scanné le code QR."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:576
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:643
msgid ""
"How long the customer has to pay once they scan the QR code. Left alone, "
"orders follow your merchant account's deadline."
@@ -5485,37 +5518,37 @@ msgstr ""
"Combien de temps la clientèle a pour payer après avoir scanné le code QR. "
"Sans modification, le délai du compte s'applique."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:591
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:658
msgid "Minimum Age Requirement"
msgstr "Âge minimum requis"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:608
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:675
msgid "Restricts who can pay. Leave at 0 for no restriction."
msgstr ""
"Restreint les personnes autorisées à payer. Laissez 0 pour aucune "
"restriction."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:636
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:703
msgid "Which currency this code charges in."
msgstr "Devise dans laquelle ce code permet d’encaisser."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:647
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:714
msgid "4. What the Customer Can Change"
msgstr "4. Ce que le client peut changer"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:649
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:716
msgid "Optional. Start the customer off with a value they can still change."
msgstr "Facultatif. Proposez à la clientèle une valeur de départ modifiable."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:660
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:727
msgid "Hide suggestions"
msgstr "Masquer les suggestions"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:661
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:728
msgid "Show suggestions"
msgstr "Afficher les suggestions"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:670
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:737
msgid ""
"Nothing is left to the customer — you fix both the amount and the "
"description above."
@@ -5523,34 +5556,34 @@ msgstr ""
"Rien n'est laissé au client — vous fixez ci-dessus le montant et le "
"descriptif."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:690
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:757
msgid "Suggest a starting amount"
msgstr "Proposer un montant de départ"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:692
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:746
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:759
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:813
msgid "They see this filled in and can still change it."
msgstr "Ils le voient prérempli et peuvent encore le modifier."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:719
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
msgid "Charged in the template currency, set under Advanced Options."
msgstr "Facturé dans la devise du modèle, définie dans les options avancées."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:744
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:811
msgid "Suggest a description"
msgstr "Proposer un descriptif"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:755
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:822
msgid "e.g. Donation to the animal shelter"
msgstr "p. ex. Don au refuge pour animaux"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:788
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:855
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1853
#: packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx:477
msgid "Save Changes"
msgstr "Enregistrer les modifications"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:789
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:856
msgid "Create Template"
msgstr "Créer un modèle"
diff --git a/packages/taler-merchant-webui/src/i18n/it.po b/packages/taler-merchant-webui/src/i18n/it.po
@@ -43,8 +43,8 @@ msgstr "Cassa al banco"
#: packages/taler-merchant-webui/src/ui/Menu.tsx:56
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:128
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:354
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:376
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:363
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:385
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:222
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:239
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:256
@@ -423,7 +423,7 @@ msgstr "Esempi di formato della durata:"
#. Printed under the QR code, so it is translated and the amount is
#. formatted rather than left in the "CHF:5.00" protocol spelling.
#: packages/taler-merchant-webui/src/utils/templates.ts:38
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:235
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:245
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1396
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1452
msgid "A fixed amount"
@@ -542,7 +542,9 @@ msgstr "Richiesta non riuscita"
msgid ""
"This product is locked by a shopping cart or an unpaid order. Enable \"Force "
"deletion\" to release its locks and delete the product."
-msgstr "Questo prodotto è bloccato da un carrello o da un ordine non pagato. Attivi «Eliminazione forzata» per rimuovere i blocchi ed eliminare il prodotto."
+msgstr ""
+"Questo prodotto è bloccato da un carrello o da un ordine non pagato. Attivi "
+"«Eliminazione forzata» per rimuovere i blocchi ed eliminare il prodotto."
#: packages/taler-merchant-webui/src/utils/errors.ts:133
msgid ""
@@ -1252,7 +1254,7 @@ msgstr "Servizio di pagamento"
#: packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx:855
#: packages/taler-merchant-webui/src/ui/AmountInput.tsx:197
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:620
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:687
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:244
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:274
#: packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx:150
@@ -1420,7 +1422,7 @@ msgstr "Non è stato possibile rimuovere il conto bancario"
#: packages/taler-merchant-webui/src/screens/InventoryScreen.tsx:921
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:895
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:311
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:778
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:845
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:493
#: packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx:60
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:593
@@ -1461,7 +1463,7 @@ msgstr "Sì, rimuovilo"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:352
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:691
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:143
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:373
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:288
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:382
#: packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx:115
@@ -2064,7 +2066,7 @@ msgstr "La ragione sociale che i clienti vedono sulle ricevute."
#: packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx:763
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:845
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:550
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:562
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:832
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:900
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1814
@@ -2270,14 +2272,14 @@ msgstr "Città (facoltativo)"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:377
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:822
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:527
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:539
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1703
msgid "Hide advanced options"
msgstr "Nascondi opzioni avanzate"
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:378
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:823
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1704
msgid "Show advanced options"
msgstr "Mostra opzioni avanzate"
@@ -3550,7 +3552,7 @@ msgid "▼ Show"
msgstr "▼ Mostra"
#: packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx:122
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:572
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:639
msgid "Time to Pay"
msgstr "Tempo per pagare"
@@ -3673,7 +3675,7 @@ msgstr "Inserisci durate valide per l’ordine."
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:916
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:363
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:219
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:230
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:379
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:495
msgid "Currency configuration is unavailable."
@@ -3731,14 +3733,14 @@ msgstr "Modifica avanzata"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1195
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:475
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:384
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:393
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:964
msgid "Currency configuration could not be loaded"
msgstr "Non è stato possibile caricare la configurazione della valuta"
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1199
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:479
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:388
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:397
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:968
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:953
msgid "Loading currency configuration…"
@@ -5187,7 +5189,7 @@ msgid "Minimum Age Restriction (in years)"
msgstr "Limite di età (in anni)"
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:908
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:853
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:609
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1851
msgid "Saving..."
@@ -5291,89 +5293,89 @@ msgstr "Non è stato possibile eliminare il modello"
msgid "🖨 Print Sheet"
msgstr "🖨 Stampa il foglio"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:223
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:234
msgid "Enter a valid payment duration."
msgstr "Inserisci una durata di pagamento valida."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:227
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:238
msgid "Please enter a template name."
msgstr "Inserisci un nome per il modello."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:237
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:247
msgid "A fixed amount (%1$s)"
msgstr "Un importo fisso (%1$s)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:239
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:249
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1404
msgid "An amount the customer enters"
msgstr "Un importo inserito dal cliente"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:241
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:251
msgid "Products from your inventory"
msgstr "Prodotti del suo inventario"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:253
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:263
msgid "Enter a valid fixed amount in the selected currency."
msgstr "Inserire un importo fisso valido nella valuta selezionata."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:261
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:271
msgid "Enter a valid minimum age between 0 and 200."
msgstr "Inserire un’età minima valida compresa tra 0 e 200."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:338
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:347
msgid "Failed to save template. Please check input parameters."
msgstr "Non è stato possibile salvare il modello. Controlla i parametri."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:355
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "Edit Template"
msgstr "Modifica il modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:356
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:378
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:365
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:387
msgid "Define reusable payment types, fixed-item orders, or donation QR codes."
msgstr ""
"Definisca tipi di pagamento riutilizzabili, ordini con voci fisse o codici "
"QR per donazioni."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:361
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:366
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:370
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:375
msgid "Template details could not be loaded"
msgstr "Impossibile caricare i dettagli del modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "New Template"
msgstr "Nuovo modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:394
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:403
msgid "Could not save the template"
msgstr "Non è stato possibile salvare il modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:401
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:410
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:360
msgid "1. What it Sells"
msgstr "1. Che cosa vende"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:404
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
msgid "Choose how this template's orders are presented to customer wallets."
msgstr ""
"Scelga come presentare gli ordini di questo modello ai portafogli dei "
"clienti."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:405
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
msgid "Kept as it is — this portal cannot change what this template sells."
msgstr ""
"Resta invariato — questo portale non può cambiare ciò che il modello vende."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:422
msgid "🛍️ This template sells products from your inventory."
msgstr "🛍️ Questo modello vende prodotti dal suo inventario."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:423
msgid "🌐 This template sells access to a website."
msgstr "🌐 Questo modello vende l'accesso a un sito web."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:417
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:426
msgid ""
"Its settings for that were made elsewhere and are kept exactly as they are. "
"You can still change the name, the description, and the options below."
@@ -5381,21 +5383,21 @@ msgstr ""
"Le relative impostazioni sono state definite altrove e restano invariate. "
"Può comunque cambiare nome, descrizione e le opzioni qui sotto."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:452
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:461
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:404
msgid "2. Template Details"
msgstr "2. Dettagli del modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:460
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:469
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:407
msgid "Template Name"
msgstr "Nome del modello"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:466
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:475
msgid "e.g. Espresso Stand QR Code"
msgstr "ad es. codice QR del banco espresso"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:473
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:482
msgid ""
"What this template is for in your portal dashboard so you can identify it "
"later."
@@ -5403,15 +5405,15 @@ msgstr ""
"A che cosa serve questo modello nella sua panoramica, per riconoscerlo in "
"seguito."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:481
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:490
msgid "What the customer sees (Order Summary)"
msgstr "Che cosa vede il cliente (riepilogo)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:486
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:495
msgid "e.g. Single Espresso Coffee"
msgstr "ad es. Espresso singolo"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:493
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:502
msgid ""
"The order description shown inside customer wallets. Leave blank to let the "
"customer describe it, optionally starting from a description you suggest "
@@ -5421,27 +5423,29 @@ msgstr ""
"vuota perché la scriva lui, eventualmente partendo da un suggerimento qui "
"sotto."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:499
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:508
msgid "Fixed Amount"
msgstr "Importo fisso"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:506
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:518
msgid "Select currency and enter the fixed price charged for every order."
msgstr "Scelga la valuta e inserisca il prezzo fisso di ogni ordine."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:516
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
msgid "3. Advanced Options"
msgstr "3. Opzioni avanzate"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:517
-msgid "Template identifier, payment expiration, and age limits."
-msgstr "Identificativo del modello, scadenza del pagamento e limiti di età."
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:529
+msgid "Template identifier, OTP device, payment expiration, and age limits."
+msgstr ""
+"Identificativo del modello, dispositivo OTP, scadenza del pagamento e limiti "
+"di età."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:552
msgid "Template Identifier (ID)"
msgstr "Identificativo del modello (ID)"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:565
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:577
msgid ""
"Appears in web addresses and printed QR codes. Cannot be changed once "
"created."
@@ -5449,12 +5453,42 @@ msgstr ""
"Compare negli indirizzi web e nei codici QR stampati. Non modificabile dopo "
"la creazione."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:575
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:584
+msgid "OTP device"
+msgstr "Dispositivo OTP"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:585
+msgid "Search devices by name or ID"
+msgstr "Cerca dispositivi per nome o identificativo"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:588
+msgid "Optional. Select the device used to verify payments from this template."
+msgstr ""
+"Facoltativo. Seleziona il dispositivo utilizzato per verificare i pagamenti "
+"generati da questo modello."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:600
+msgid "No device"
+msgstr "Nessun dispositivo"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:621
+msgid "Loading devices…"
+msgstr "Caricamento dei dispositivi…"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:626
+msgid "Devices could not be loaded"
+msgstr "Impossibile caricare i dispositivi"
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:632
+msgid "No OTP devices configured."
+msgstr "Nessun dispositivo OTP configurato."
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:642
msgid "How long the customer has to pay once they scan the QR code."
msgstr ""
"Quanto tempo ha il cliente per pagare dopo aver scansionato il codice QR."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:576
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:643
msgid ""
"How long the customer has to pay once they scan the QR code. Left alone, "
"orders follow your merchant account's deadline."
@@ -5462,36 +5496,36 @@ msgstr ""
"Quanto tempo ha il cliente per pagare dopo la scansione. Se non lo cambia, "
"vale il termine del suo conto."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:591
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:658
msgid "Minimum Age Requirement"
msgstr "Età minima richiesta"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:608
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:675
msgid "Restricts who can pay. Leave at 0 for no restriction."
msgstr "Limita chi può pagare. Lascia 0 per nessuna restrizione."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:636
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:703
msgid "Which currency this code charges in."
msgstr "In quale valuta incassa questo codice."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:647
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:714
msgid "4. What the Customer Can Change"
msgstr "4. Che cosa può cambiare il cliente"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:649
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:716
msgid "Optional. Start the customer off with a value they can still change."
msgstr ""
"Facoltativo. Proponi al cliente un valore iniziale che può ancora modificare."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:660
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:727
msgid "Hide suggestions"
msgstr "Nascondi suggerimenti"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:661
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:728
msgid "Show suggestions"
msgstr "Mostra suggerimenti"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:670
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:737
msgid ""
"Nothing is left to the customer — you fix both the amount and the "
"description above."
@@ -5499,34 +5533,34 @@ msgstr ""
"Al cliente non è lasciato nulla: sopra fissa sia l'importo sia la "
"descrizione."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:690
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:757
msgid "Suggest a starting amount"
msgstr "Proponi un importo iniziale"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:692
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:746
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:759
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:813
msgid "They see this filled in and can still change it."
msgstr "Lo vedono già compilato e possono ancora modificarlo."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:719
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
msgid "Charged in the template currency, set under Advanced Options."
msgstr "Addebitato nella valuta del modello, impostata nelle opzioni avanzate."
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:744
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:811
msgid "Suggest a description"
msgstr "Proponi una descrizione"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:755
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:822
msgid "e.g. Donation to the animal shelter"
msgstr "ad es. Donazione al rifugio per animali"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:788
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:855
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1853
#: packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx:477
msgid "Save Changes"
msgstr "Salva modifiche"
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:789
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:856
msgid "Create Template"
msgstr "Crea un modello"
diff --git a/packages/taler-merchant-webui/src/i18n/strings.ts b/packages/taler-merchant-webui/src/i18n/strings.ts
@@ -2057,14 +2057,26 @@ strings["it"] = {
"Scelga la valuta e inserisca il prezzo fisso di ogni ordine.",
],
"3. Advanced Options": ["3. Opzioni avanzate"],
- "Template identifier, payment expiration, and age limits.": [
- "Identificativo del modello, scadenza del pagamento e limiti di età.",
+ "Template identifier, OTP device, payment expiration, and age limits.": [
+ "Identificativo del modello, dispositivo OTP, scadenza del pagamento e limiti di età.",
],
"Template Identifier (ID)": ["Identificativo del modello (ID)"],
"Appears in web addresses and printed QR codes. Cannot be changed once created.":
[
"Compare negli indirizzi web e nei codici QR stampati. Non modificabile dopo la creazione.",
],
+ "OTP device": ["Dispositivo OTP"],
+ "Search devices by name or ID": [
+ "Cerca dispositivi per nome o identificativo",
+ ],
+ "Optional. Select the device used to verify payments from this template.":
+ [
+ "Facoltativo. Seleziona il dispositivo utilizzato per verificare i pagamenti generati da questo modello.",
+ ],
+ "No device": ["Nessun dispositivo"],
+ "Loading devices…": ["Caricamento dei dispositivi…"],
+ "Devices could not be loaded": ["Impossibile caricare i dispositivi"],
+ "No OTP devices configured.": ["Nessun dispositivo OTP configurato."],
"How long the customer has to pay once they scan the QR code.": [
"Quanto tempo ha il cliente per pagare dopo aver scansionato il codice QR.",
],
@@ -5780,8 +5792,8 @@ strings["it"] = {
lang: "it",
completeness: 100,
_pogen: {
- total: 2827,
- translated: 2827,
+ total: 2834,
+ translated: 2834,
untranslated: [],
optional: [],
},
@@ -7839,14 +7851,26 @@ strings["fr"] = {
"Choisissez la devise et saisissez le prix fixe de chaque commande.",
],
"3. Advanced Options": ["3. Options avancées"],
- "Template identifier, payment expiration, and age limits.": [
- "Identifiant du modèle, expiration du paiement et limites d'âge.",
+ "Template identifier, OTP device, payment expiration, and age limits.": [
+ "Identifiant du modèle, appareil OTP, expiration du paiement et limites d’âge.",
],
"Template Identifier (ID)": ["Identifiant du modèle (ID)"],
"Appears in web addresses and printed QR codes. Cannot be changed once created.":
[
"Apparaît dans les adresses web et les codes QR imprimés. Non modifiable ensuite.",
],
+ "OTP device": ["Appareil OTP"],
+ "Search devices by name or ID": [
+ "Rechercher un appareil par nom ou identifiant",
+ ],
+ "Optional. Select the device used to verify payments from this template.":
+ [
+ "Facultatif. Sélectionnez l’appareil utilisé pour vérifier les paiements issus de ce modèle.",
+ ],
+ "No device": ["Aucun appareil"],
+ "Loading devices…": ["Chargement des appareils…"],
+ "Devices could not be loaded": ["Impossible de charger les appareils"],
+ "No OTP devices configured.": ["Aucun appareil OTP configuré."],
"How long the customer has to pay once they scan the QR code.": [
"Combien de temps le client a pour payer après avoir scanné le code QR.",
],
@@ -11582,8 +11606,8 @@ strings["fr"] = {
lang: "fr",
completeness: 100,
_pogen: {
- total: 2827,
- translated: 2827,
+ total: 2834,
+ translated: 2834,
untranslated: [],
optional: [],
},
@@ -13635,14 +13659,24 @@ strings["de"] = {
"Wählen Sie die Währung und geben Sie den festen Preis je Bestellung ein.",
],
"3. Advanced Options": ["3. Erweiterte Optionen"],
- "Template identifier, payment expiration, and age limits.": [
- "Kennung der Vorlage, Ablauf der Zahlung und Altersgrenzen.",
+ "Template identifier, OTP device, payment expiration, and age limits.": [
+ "Kennung der Vorlage, OTP-Gerät, Ablauf der Zahlung und Altersgrenzen.",
],
"Template Identifier (ID)": ["Kennung der Vorlage (ID)"],
"Appears in web addresses and printed QR codes. Cannot be changed once created.":
[
"Erscheint in Webadressen und gedruckten QR-Codes. Nach dem Anlegen nicht änderbar.",
],
+ "OTP device": ["OTP-Gerät"],
+ "Search devices by name or ID": ["Geräte nach Name oder Kennung suchen"],
+ "Optional. Select the device used to verify payments from this template.":
+ [
+ "Optional. Wählen Sie das Gerät aus, mit dem Zahlungen aus dieser Vorlage überprüft werden.",
+ ],
+ "No device": ["Kein Gerät"],
+ "Loading devices…": ["Geräte werden geladen …"],
+ "Devices could not be loaded": ["Geräte konnten nicht geladen werden"],
+ "No OTP devices configured.": ["Es sind keine OTP-Geräte eingerichtet."],
"How long the customer has to pay once they scan the QR code.": [
"Wie lange die Kundschaft nach dem Scannen des QR-Codes zum Bezahlen hat.",
],
@@ -17358,8 +17392,8 @@ strings["de"] = {
lang: "de",
completeness: 100,
_pogen: {
- total: 2827,
- translated: 2827,
+ total: 2834,
+ translated: 2834,
untranslated: [],
optional: [],
},
@@ -19411,14 +19445,24 @@ strings["de-CH"] = {
"Wählen Sie die Währung und geben Sie den festen Preis je Bestellung ein.",
],
"3. Advanced Options": ["3. Erweiterte Optionen"],
- "Template identifier, payment expiration, and age limits.": [
- "Kennung der Vorlage, Ablauf der Zahlung und Altersgrenzen.",
+ "Template identifier, OTP device, payment expiration, and age limits.": [
+ "Kennung der Vorlage, OTP-Gerät, Ablauf der Zahlung und Altersgrenzen.",
],
"Template Identifier (ID)": ["Kennung der Vorlage (ID)"],
"Appears in web addresses and printed QR codes. Cannot be changed once created.":
[
"Erscheint in Webadressen und gedruckten QR-Codes. Nach dem Anlegen nicht änderbar.",
],
+ "OTP device": ["OTP-Gerät"],
+ "Search devices by name or ID": ["Geräte nach Name oder Kennung suchen"],
+ "Optional. Select the device used to verify payments from this template.":
+ [
+ "Optional. Wählen Sie das Gerät aus, mit dem Zahlungen aus dieser Vorlage überprüft werden.",
+ ],
+ "No device": ["Kein Gerät"],
+ "Loading devices…": ["Geräte werden geladen …"],
+ "Devices could not be loaded": ["Geräte konnten nicht geladen werden"],
+ "No OTP devices configured.": ["Es sind keine OTP-Geräte eingerichtet."],
"How long the customer has to pay once they scan the QR code.": [
"Wie lange die Kundschaft nach dem Scannen des QR-Codes zum Bezahlen hat.",
],
@@ -23134,8 +23178,8 @@ strings["de-CH"] = {
lang: "de-CH",
completeness: 100,
_pogen: {
- total: 2827,
- translated: 2827,
+ total: 2834,
+ translated: 2834,
untranslated: [],
optional: [],
},
diff --git a/packages/taler-merchant-webui/src/i18n/taler-merchant-webui.pot b/packages/taler-merchant-webui/src/i18n/taler-merchant-webui.pot
@@ -55,8 +55,8 @@ msgstr ""
#: packages/taler-merchant-webui/src/ui/Menu.tsx:56
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:128
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:354
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:376
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:363
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:385
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:222
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:239
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:256
@@ -427,7 +427,7 @@ msgstr ""
#. Printed under the QR code, so it is translated and the amount is
#. formatted rather than left in the "CHF:5.00" protocol spelling.
#: packages/taler-merchant-webui/src/utils/templates.ts:38
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:235
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:245
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1396
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1452
msgid "A fixed amount"
@@ -1216,7 +1216,7 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/MoneyInScreen.tsx:855
#: packages/taler-merchant-webui/src/ui/AmountInput.tsx:197
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:620
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:687
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:244
#: packages/taler-merchant-webui/src/screens/PaymentServicesScreen.tsx:274
#: packages/taler-merchant-webui/src/screens/ServerInfoScreen.tsx:150
@@ -1372,7 +1372,7 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/InventoryScreen.tsx:921
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:895
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:311
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:778
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:845
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:493
#: packages/taler-merchant-webui/src/ui/ConfirmDeleteModal.tsx:60
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:593
@@ -1413,7 +1413,7 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:352
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:691
#: packages/taler-merchant-webui/src/screens/TemplatesScreen.tsx:143
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:373
#: packages/taler-merchant-webui/src/screens/AccessScreen.tsx:288
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:382
#: packages/taler-merchant-webui/src/screens/WebhooksScreen.tsx:115
@@ -2000,7 +2000,7 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/SelfProvisionScreen.tsx:763
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:845
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:550
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:562
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:832
#: packages/taler-merchant-webui/src/screens/ReportsScreen.tsx:900
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1814
@@ -2195,14 +2195,14 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:377
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:822
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:527
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:539
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1703
msgid "Hide advanced options"
msgstr ""
#: packages/taler-merchant-webui/src/screens/AddPayoutAccountScreen.tsx:378
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:823
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1704
msgid "Show advanced options"
msgstr ""
@@ -3402,7 +3402,7 @@ msgid "▼ Show"
msgstr ""
#: packages/taler-merchant-webui/src/screens/create-order/CreateOrderAdvancedSection.tsx:122
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:572
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:639
msgid "Time to Pay"
msgstr ""
@@ -3523,7 +3523,7 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:916
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:363
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:219
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:230
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:379
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:495
msgid "Currency configuration is unavailable."
@@ -3576,14 +3576,14 @@ msgstr ""
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1195
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:475
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:384
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:393
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:964
msgid "Currency configuration could not be loaded"
msgstr ""
#: packages/taler-merchant-webui/src/screens/CreateOrderScreen.tsx:1199
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:479
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:388
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:397
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:968
#: packages/taler-merchant-webui/src/screens/PosScreen.tsx:953
msgid "Loading currency configuration…"
@@ -4958,7 +4958,7 @@ msgid "Minimum Age Restriction (in years)"
msgstr ""
#: packages/taler-merchant-webui/src/screens/CreateProductScreen.tsx:908
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:853
#: packages/taler-merchant-webui/src/screens/CreateWebhookScreen.tsx:609
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1851
msgid "Saving..."
@@ -5056,217 +5056,245 @@ msgstr ""
msgid "🖨 Print Sheet"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:223
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:234
msgid "Enter a valid payment duration."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:227
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:238
msgid "Please enter a template name."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:237
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:247
msgid "A fixed amount (%1$s)"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:239
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:249
#: packages/taler-merchant-webui/src/tutorial/tutorialData.tsx:1404
msgid "An amount the customer enters"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:241
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:251
msgid "Products from your inventory"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:253
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:263
msgid "Enter a valid fixed amount in the selected currency."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:261
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:271
msgid "Enter a valid minimum age between 0 and 200."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:338
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:347
msgid "Failed to save template. Please check input parameters."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:355
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:364
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "Edit Template"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:356
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:378
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:365
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:387
msgid "Define reusable payment types, fixed-item orders, or donation QR codes."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:361
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:366
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:370
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:375
msgid "Template details could not be loaded"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:377
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:386
msgid "New Template"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:394
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:403
msgid "Could not save the template"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:401
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:410
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:360
msgid "1. What it Sells"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:404
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
msgid "Choose how this template's orders are presented to customer wallets."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:405
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
msgid "Kept as it is — this portal cannot change what this template sells."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:413
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:422
msgid "🛍️ This template sells products from your inventory."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:414
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:423
msgid "🌐 This template sells access to a website."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:417
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:426
msgid ""
"Its settings for that were made elsewhere and are kept exactly as they are. You "
"can still change the name, the description, and the options below."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:452
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:461
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:404
msgid "2. Template Details"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:460
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:469
#: packages/taler-merchant-webui/src/screens/TemplateDetailsScreen.tsx:407
msgid "Template Name"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:466
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:475
msgid "e.g. Espresso Stand QR Code"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:473
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:482
msgid "What this template is for in your portal dashboard so you can identify it later."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:481
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:490
msgid "What the customer sees (Order Summary)"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:486
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:495
msgid "e.g. Single Espresso Coffee"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:493
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:502
msgid ""
"The order description shown inside customer wallets. Leave blank to let the "
"customer describe it, optionally starting from a description you suggest below."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:499
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:508
msgid "Fixed Amount"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:506
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:518
msgid "Select currency and enter the fixed price charged for every order."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:516
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:528
msgid "3. Advanced Options"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:517
-msgid "Template identifier, payment expiration, and age limits."
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:529
+msgid "Template identifier, OTP device, payment expiration, and age limits."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:540
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:552
msgid "Template Identifier (ID)"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:565
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:577
msgid "Appears in web addresses and printed QR codes. Cannot be changed once created."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:575
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:584
+msgid "OTP device"
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:585
+msgid "Search devices by name or ID"
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:588
+msgid "Optional. Select the device used to verify payments from this template."
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:600
+msgid "No device"
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:621
+msgid "Loading devices…"
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:626
+msgid "Devices could not be loaded"
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:632
+msgid "No OTP devices configured."
+msgstr ""
+
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:642
msgid "How long the customer has to pay once they scan the QR code."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:576
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:643
msgid ""
"How long the customer has to pay once they scan the QR code. Left alone, orders "
"follow your merchant account's deadline."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:591
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:658
msgid "Minimum Age Requirement"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:608
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:675
msgid "Restricts who can pay. Leave at 0 for no restriction."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:636
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:703
msgid "Which currency this code charges in."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:647
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:714
msgid "4. What the Customer Can Change"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:649
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:716
msgid "Optional. Start the customer off with a value they can still change."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:660
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:727
msgid "Hide suggestions"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:661
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:728
msgid "Show suggestions"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:670
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:737
msgid ""
"Nothing is left to the customer — you fix both the amount and the description "
"above."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:690
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:757
msgid "Suggest a starting amount"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:692
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:746
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:759
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:813
msgid "They see this filled in and can still change it."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:719
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:786
msgid "Charged in the template currency, set under Advanced Options."
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:744
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:811
msgid "Suggest a description"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:755
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:822
msgid "e.g. Donation to the animal shelter"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:788
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:855
#: packages/taler-merchant-webui/src/screens/CreateSubscriptionScreen.tsx:1853
#: packages/taler-merchant-webui/src/screens/CreateDeviceScreen.tsx:477
msgid "Save Changes"
msgstr ""
-#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:789
+#: packages/taler-merchant-webui/src/screens/CreateTemplateScreen.tsx:856
msgid "Create Template"
msgstr ""