Some checks failed
- Add wallet diagnostics page at /admin/loyalty/wallet-debug (super admin only) with explorer-sidebar pattern: config validation, class status, card inspector, save URL tester, recent enrollments, and Apple Wallet status panels - Fix Google Wallet fat JWT: include both loyaltyClasses and loyaltyObjects in payload, use UNDER_REVIEW instead of DRAFT for class reviewStatus - Fix StorefrontProgramResponse schema: accept google_class_id values while keeping exclude=True (was rejecting non-None values) - Standardize all module configs to read from .env file directly (env_file=".env", extra="ignore") matching core Settings pattern - Add MOD-026 architecture rule enforcing env_file in module configs - Add SVC-005 noqa support in architecture validator - Add test files for dev_tools domain_health and isolation_audit services - Add google_wallet_status.py script for querying Google Wallet API - Use table_wrapper macro in wallet-debug.html (FE-005 compliance) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
687 lines
34 KiB
JSON
687 lines
34 KiB
JSON
{
|
|
"loyalty": {
|
|
"module": {
|
|
"name": "Treieprogrammer",
|
|
"description": "Stempel- a Punktebaséiert Treieprogrammer mat Wallet-Integratioun"
|
|
},
|
|
"program": {
|
|
"title": "Treieprogramm",
|
|
"create": "Programm erstellen",
|
|
"edit": "Programm beaarbechten",
|
|
"activate": "Aktivéieren",
|
|
"deactivate": "Deaktivéieren",
|
|
"type": {
|
|
"stamps": "Stempelen",
|
|
"points": "Punkten",
|
|
"hybrid": "Hybrid"
|
|
}
|
|
},
|
|
"card": {
|
|
"title": "Treiekaart",
|
|
"number": "Kaartnummer",
|
|
"qr_code": "QR-Code",
|
|
"enroll": "Client aschreiben",
|
|
"deactivate": "Kaart deaktivéieren"
|
|
},
|
|
"stamp": {
|
|
"title": "Stempelen",
|
|
"add": "Stempel derbäisetzen",
|
|
"redeem": "Belounung aléisen",
|
|
"count": "{current} vun {target}",
|
|
"until_reward": "{count} bis zur Belounung"
|
|
},
|
|
"points": {
|
|
"title": "Punkten",
|
|
"earn": "Punkten sammelen",
|
|
"redeem": "Punkten aléisen",
|
|
"balance": "{count} Punkten",
|
|
"per_euro": "{points} Punkten pro Euro"
|
|
},
|
|
"pin": {
|
|
"title": "Personal-PINen",
|
|
"create": "PIN erstellen",
|
|
"edit": "PIN beaarbechten",
|
|
"unlock": "PIN entspären",
|
|
"locked": "PIN gespaart bis {time}"
|
|
},
|
|
"wallet": {
|
|
"google": "An Google Wallet derbäisetzen",
|
|
"apple": "An Apple Wallet derbäisetzen"
|
|
},
|
|
"stats": {
|
|
"title": "Statistiken",
|
|
"total_cards": "Total Kaarten",
|
|
"active_cards": "Aktiv Kaarten",
|
|
"stamps_issued": "Stempelen ausgestallt",
|
|
"rewards_redeemed": "Belounungen agelées"
|
|
},
|
|
"errors": {
|
|
"program_not_found": "Treieprogramm net fonnt",
|
|
"program_inactive": "Treieprogramm ass net aktiv",
|
|
"card_not_found": "Treiekaart net fonnt",
|
|
"card_inactive": "Treiekaart ass net aktiv",
|
|
"cooldown": "W.e.g. waart {minutes} Minutten virum nächste Stempel",
|
|
"daily_limit": "Deeglecht Stempel-Limit vun {limit} erreecht",
|
|
"insufficient_stamps": "Brauch {required} Stempelen, huet {current}",
|
|
"insufficient_points": "Brauch {required} Punkten, huet {current}",
|
|
"pin_required": "Personal-PIN erfuerderlech",
|
|
"pin_invalid": "Ongëlteg Personal-PIN",
|
|
"pin_locked": "PIN gespaart wéinst ze vill Fehlversich"
|
|
}
|
|
},
|
|
"menu": {
|
|
"loyalty": "Treiprogramm",
|
|
"loyalty_programs": "Treiprogrammer",
|
|
"programs": "Programmer",
|
|
"analytics": "Analytik",
|
|
"dashboard": "Dashboard",
|
|
"terminal": "Terminal",
|
|
"customer_cards": "Clientekaarten",
|
|
"statistics": "Statistiken",
|
|
"program": "Programm",
|
|
"overview": "Iwwersiicht",
|
|
"settings": "Astellungen",
|
|
"wallet_debug": "Wallet Debug"
|
|
},
|
|
"permissions": {
|
|
"view_programs": "Programmer kucken",
|
|
"view_programs_desc": "Treiheet-Programmer an Detailer kucken",
|
|
"manage_programs": "Programmer verwalten",
|
|
"manage_programs_desc": "Treiheet-Programmer erstellen a konfiguréieren",
|
|
"view_rewards": "Beloununge kucken",
|
|
"view_rewards_desc": "Belounungen an Aléisunge kucken",
|
|
"manage_rewards": "Beloununge verwalten",
|
|
"manage_rewards_desc": "Treiheet-Belounungen erstellen a verwalten"
|
|
},
|
|
"onboarding": {
|
|
"create_program": {
|
|
"title": "Treieprogramm erstellen",
|
|
"description": "Erstellt Äert éischt Stempel- oder Punkteprogramm"
|
|
}
|
|
},
|
|
"enrollment": {
|
|
"title": "Gitt Member vun eisem Belounungsprogramm!",
|
|
"subtitle": "Verdéngt {points} Punkt pro ausgegoenen EUR",
|
|
"not_available_title": "Programm net verfügbar",
|
|
"not_available_message": "Dëse Buttek huet nach kee Treieprogramm ageriicht.",
|
|
"welcome_bonus": "Kritt {points} Bonuspunkten wann Dir Iech umellt!",
|
|
"already_member": "Schonn Member? Är Punkten sinn mat Ärer E-Mail verlinkt.",
|
|
"form": {
|
|
"email": "E-Mail",
|
|
"first_name": "Virnumm",
|
|
"last_name": "Nonumm",
|
|
"phone": "Telefon (fakultativ)",
|
|
"birthday": "Gebuertsdag (fakultativ)",
|
|
"birthday_hint": "Fir speziell Gebuertsdagsbelounungen",
|
|
"terms_agree": "Ech akzeptéieren d'",
|
|
"terms": "Allgemeng Geschäftsbedingungen",
|
|
"marketing_consent": "Mir Neiegkeeten an Sonderoffere schécken",
|
|
"joining": "Umeldung leeft...",
|
|
"join_button": "Bäitrieden & {points} Punkten kréien"
|
|
},
|
|
"privacy_policy": "Dateschutzrichtlinn",
|
|
"close": "Zoumaachen",
|
|
"success": {
|
|
"title": "Wëllkomm!",
|
|
"message": "Dir sidd elo Member vun eisem Belounungsprogramm.",
|
|
"card_number": "Är Kaartnummer",
|
|
"wallet_prompt": "Späichert Är Kaart op Ärem Handy fir einfachen Zougang:",
|
|
"next_steps_title": "Wéi geet et weider?",
|
|
"step_earn": "Weist Är Kaartnummer beim Akaf fir Punkten ze sammelen",
|
|
"step_balance": "Préift Äre Kontostand online oder an der App",
|
|
"step_redeem": "Léist Punkten géint Belounungen an all eise Standuerter an",
|
|
"view_dashboard": "Mäin Treie-Dashboard kucken",
|
|
"continue_shopping": "Weider akafen"
|
|
},
|
|
"errors": {
|
|
"load_failed": "Programminformatiounen konnten net gelueden ginn",
|
|
"email_exists": "Dës E-Mail ass schonn an eisem Treieprogramm registréiert.",
|
|
"failed": "Umeldung feelgeschloen. Probéiert w.e.g. nach eng Kéier."
|
|
}
|
|
},
|
|
"common": {
|
|
"active": "Aktiv",
|
|
"inactive": "Inaktiv",
|
|
"cancel": "Ofbriechen",
|
|
"save": "Späicheren",
|
|
"delete": "Läschen",
|
|
"confirm": "Bestätegen",
|
|
"refresh": "Aktualiséieren",
|
|
"loading": "Lueden...",
|
|
"saving": "Späicheren...",
|
|
"view": "Kucken",
|
|
"edit": "Beaarbechten",
|
|
"yes": "Jo",
|
|
"no": "Neen",
|
|
"none": "Keen",
|
|
"never": "Ni",
|
|
"total": "TOTAL",
|
|
"continue": "Weider",
|
|
"back": "Zréck",
|
|
"points": "Punkten",
|
|
"minutes": "Minutten",
|
|
"or": "oder",
|
|
"at": "bei"
|
|
},
|
|
"transactions": {
|
|
"card_created": "Ageschriwwen",
|
|
"welcome_bonus": "Wëllkommensbonus",
|
|
"stamp_earned": "Stempel kritt",
|
|
"stamp_redeemed": "Stempel agelées",
|
|
"stamp_voided": "Stempel stornéiert",
|
|
"stamp_adjustment": "Stempel ugepasst",
|
|
"points_earned": "Punkten verdéngt",
|
|
"points_redeemed": "Punkten agelées",
|
|
"points_voided": "Punkten stornéiert",
|
|
"points_adjustment": "Punkten ugepasst",
|
|
"points_expired": "Punkten ofgelaf",
|
|
"card_deactivated": "Deaktivéiert",
|
|
"reward_redeemed": "Belounung agelées"
|
|
},
|
|
"shared": {
|
|
"analytics": {
|
|
"total_programs": "Programmer insgesamt",
|
|
"total_members": "Memberen insgesamt",
|
|
"active_members": "Aktiv Memberen",
|
|
"points_issued_30d": "Punkten vergi (30D)",
|
|
"transactions_30d": "Transaktiounen (30D)",
|
|
"x_active": "{count} aktiv",
|
|
"points_overview": "Punkteniwwersiicht",
|
|
"points_issued_vs_redeemed": "Punkten vergi vs agelées (30D)",
|
|
"issued": "Vergi:",
|
|
"redeemed": "Agelées:",
|
|
"redemption_rate": "Aléisungsquot",
|
|
"outstanding_balance": "Ausstehende Solde",
|
|
"member_activity": "Memberaktivitéit",
|
|
"active_members_30d": "Aktiv Memberen (30D)",
|
|
"new_this_month": "Nei dëse Mount",
|
|
"merchants_with_programs": "Händler mat Programmer",
|
|
"avg_points_per_member": "Durchschn. Punkten pro Member",
|
|
"all_time_statistics": "Gesamtstatistiken",
|
|
"total_points_issued": "Total Punkten vergi",
|
|
"total_points_redeemed": "Total Punkten agelées",
|
|
"points_redeemed_30d": "Punkten agelées (30D)",
|
|
"outstanding_liability": "Ausstehend Verbindlechkeet",
|
|
"location_breakdown": "Opschlësselung no Standuert",
|
|
"store": "Geschäft",
|
|
"enrolled": "Ageschriwwen",
|
|
"points_earned": "Punkten verdéngt",
|
|
"points_redeemed": "Punkten agelées"
|
|
},
|
|
"program_view": {
|
|
"program_configuration": "Programmkonfiguratioun",
|
|
"program_name": "Programmnumm",
|
|
"card_name": "Kaartnumm",
|
|
"stamps_configuration": "Stempelkonfiguratioun",
|
|
"stamps_target": "Stempelzil",
|
|
"reward_description": "Belounungsbeschreiwung",
|
|
"reward_value": "Belounungswäert",
|
|
"points_configuration": "Punktekonfiguratioun",
|
|
"points_per_eur": "Punkten pro EUR",
|
|
"welcome_bonus": "Wëllkommensbonus",
|
|
"x_points": "{count} Punkten",
|
|
"minimum_redemption": "Mindest-Aléisung",
|
|
"minimum_purchase": "Mindest-Akaf",
|
|
"points_expiration": "Punktenoflaaf",
|
|
"x_days_inactivity": "{days} Deeg Inaktivitéit",
|
|
"redemption_rewards": "Aléisungsbelounungen",
|
|
"reward": "Belounung",
|
|
"points_required": "Néideg Punkten",
|
|
"description": "Beschreiwung",
|
|
"anti_fraud": "Betrugsschutz",
|
|
"cooldown": "Waardezäit",
|
|
"x_minutes": "{count} Minutten",
|
|
"max_daily_stamps": "Max. Stempelen pro Dag",
|
|
"staff_pin_required": "Personal-PIN erfuerderlech",
|
|
"branding": "Branding",
|
|
"primary_color": "Haaptfaarf",
|
|
"secondary_color": "Secondärfaarf",
|
|
"logo_url": "Logo-URL",
|
|
"hero_image_url": "Hannergrondbild-URL",
|
|
"terms_privacy": "AGB & Dateschutz",
|
|
"terms_conditions": "Allgemeng Geschäftsbedingungen",
|
|
"privacy_policy_url": "Dateschutzrichtlinn-URL"
|
|
},
|
|
"program_form": {
|
|
"program_type": "Programmtyp",
|
|
"points_type_desc": "Punkten pro ausgegoenen EUR verdéngen",
|
|
"stamps_type_desc": "N Stempelen sammelen, Belounung kréien",
|
|
"hybrid_type_desc": "Stempelen a Punkten kombinéiert",
|
|
"stamps_configuration": "Stempelkonfiguratioun",
|
|
"stamps_target": "Stempelzil",
|
|
"stamps_target_help": "Unzuel vun de Stempelen fir d'Belounung",
|
|
"reward_description": "Belounungsbeschreiwung",
|
|
"reward_value_cents": "Belounungswäert (Cent)",
|
|
"points_configuration": "Punktekonfiguratioun",
|
|
"points_per_eur": "Punkten pro ausgegoenen EUR",
|
|
"eur_equals_points": "1 EUR = {points} Punkt(en)",
|
|
"welcome_bonus_points": "Wëllkommensbonuspunkten",
|
|
"welcome_bonus_help": "Bonuspunkten bei der Umeldung",
|
|
"minimum_redemption_points": "Mindest-Aléisungspunkten",
|
|
"minimum_purchase_cents": "Mindest-Akaf (Cent)",
|
|
"minimum_purchase_help": "Mindestakafsbetrag fir Punkten ze sammelen (0 = kee Minimum)",
|
|
"points_expiration_days": "Punktenoflaaf (Deeg)",
|
|
"points_expiration_help": "Deeg vun Inaktivitéit bis zum Punktenoflaaf (0 = ni)",
|
|
"redemption_rewards": "Aléisungsbelounungen",
|
|
"add_reward": "Belounung derbäisetzen",
|
|
"no_rewards_configured": "Keng Belounungen konfiguréiert. Setzt eng Belounung derbäi fir datt Clienten Punkten aléise kënnen.",
|
|
"reward_name": "Belounungsnumm",
|
|
"points_required": "Néideg Punkten",
|
|
"description": "Beschreiwung",
|
|
"anti_fraud_settings": "Betrugsschutz-Astellungen",
|
|
"cooldown_minutes": "Waardezäit (Minutten)",
|
|
"cooldown_help": "Zäit tëschent Stempelen vun der selwechter Kaart",
|
|
"max_daily_stamps": "Max. Stempelen pro Dag",
|
|
"max_daily_stamps_help": "Maximal Stempelen pro Kaart pro Dag",
|
|
"require_staff_pin": "Personal-PIN verlaangen",
|
|
"branding": "Branding",
|
|
"card_name": "Kaartnumm",
|
|
"primary_color": "Haaptfaarf",
|
|
"secondary_color": "Secondärfaarf",
|
|
"logo_url": "Logo-URL",
|
|
"logo_url_help": "Erfuerderlech fir Google Wallet-Integratioun. Muss eng ëffentlech zougänglech Bild-URL sinn (PNG oder JPG).",
|
|
"hero_image_url": "Hannergrondbild-URL",
|
|
"terms_privacy": "AGB & Dateschutz",
|
|
"terms_conditions": "Allgemeng Geschäftsbedingungen",
|
|
"privacy_policy_url": "Dateschutzrichtlinn-URL",
|
|
"program_status": "Programmstatus",
|
|
"program_active": "Programm aktiv",
|
|
"program_active_help": "Deaktivéiert kënne Clienten net sammelen oder aléisen",
|
|
"delete_program": "Programm läschen",
|
|
"create_program": "Programm erstellen",
|
|
"save_changes": "Ännerunge späicheren"
|
|
}
|
|
},
|
|
"admin": {
|
|
"programs": {
|
|
"title": "Treieprogrammer",
|
|
"create_program": "Programm erstellen",
|
|
"loading": "Treieprogrammer gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun den Treieprogrammer",
|
|
"total_programs": "Programmer insgesamt",
|
|
"active": "Aktiv",
|
|
"total_members": "Memberen insgesamt",
|
|
"transactions_30d": "Transaktiounen (30D)",
|
|
"search_placeholder": "No Händlernumm sichen...",
|
|
"all_status": "All Status",
|
|
"table_merchant": "Händler",
|
|
"table_program_type": "Programmtyp",
|
|
"table_members": "Memberen",
|
|
"table_points_issued": "Punkten vergi",
|
|
"table_status": "Status",
|
|
"table_created": "Erstellt",
|
|
"table_actions": "Aktiounen",
|
|
"no_programs": "Keng Treieprogrammer fonnt",
|
|
"adjust_filters": "Probéiert Är Sich oder Filter unzepassen",
|
|
"no_merchants_yet": "Nach kee Händler huet en Treieprogramm erstellt",
|
|
"x_active": "({count} aktiv)",
|
|
"x_redeemed": "{count} agelées",
|
|
"pt_per_eur": "Pkt/EUR",
|
|
"delete_title": "Treieprogramm läschen",
|
|
"delete_message": "Treieprogramm fir \"{name}\" läschen? All verbonnen Daten (Kaarten, Transaktiounen, Belounungen) ginn dauerhaft geläscht. Dëst kann net réckgängeg gemaach ginn.",
|
|
"delete_confirm": "Programm läschen",
|
|
"create_title": "Treieprogramm erstellen",
|
|
"create_description": "Wielt en Händler fir en Treieprogramm ze erstellen.",
|
|
"search_merchant": "Händler sichen",
|
|
"type_merchant_name": "Händlernumm aginn...",
|
|
"no_merchants_found": "Keen Händler fonnt",
|
|
"existing_program_warning": "Dësen Händler huet schonn en Treieprogramm.",
|
|
"view_edit_existing": "Bestehend Programm kucken / beaarbechten"
|
|
},
|
|
"merchant_detail": {
|
|
"title": "Händler-Treiedetailer",
|
|
"loading": "Treiedetailer gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun der Händlertreie",
|
|
"program_active": "Treieprogramm aktiv",
|
|
"no_program_subtitle": "Keen Treieprogramm",
|
|
"quick_actions": "Schnellaktiounen",
|
|
"edit_program": "Programm beaarbechten",
|
|
"admin_policy": "Admin-Richtlinn",
|
|
"view_merchant": "Händler kucken",
|
|
"total_members": "Memberen insgesamt",
|
|
"active_30d": "Aktiv (30D)",
|
|
"points_issued_30d": "Punkten vergi (30D)",
|
|
"points_redeemed_30d": "Punkten agelées (30D)",
|
|
"no_program": "Keen Treieprogramm",
|
|
"no_program_desc": "Dësen Händler huet nach keen Treieprogramm ageriicht.",
|
|
"create_program": "Programm erstellen",
|
|
"delete_title": "Treieprogramm läschen",
|
|
"delete_message": "D'Treieprogramm an all verbonnen Daten ginn dauerhaft geläscht. Dëst kann net réckgängeg gemaach ginn.",
|
|
"delete_confirm": "Programm läschen",
|
|
"location_breakdown": "Opschlësselung no Standuert",
|
|
"table_location": "Standuert",
|
|
"table_enrolled": "Ageschriwwen",
|
|
"table_points_earned": "Punkten verdéngt",
|
|
"table_points_redeemed": "Punkten agelées",
|
|
"table_transactions_30d": "Transaktiounen (30D)",
|
|
"admin_policy_settings": "Admin-Richtlinn-Astellungen",
|
|
"staff_pin_policy": "Personal-PIN-Richtlinn",
|
|
"self_enrollment": "Selbstumeldung",
|
|
"cross_location_redemption": "Standuertiwergreifend Aléisung",
|
|
"allowed": "Erlaabt",
|
|
"disabled": "Deaktivéiert",
|
|
"modify_policy": "Admin-Richtlinn änneren"
|
|
},
|
|
"merchant_settings": {
|
|
"title": "Händler-Treieastelllungen",
|
|
"loading": "Astellunge gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun den Astellungen",
|
|
"admin_controlled": "Admin-kontrolléiert Astellungen fir d'Treieprogramm vun dësem Händler",
|
|
"staff_pin_policy": "Personal-PIN-Richtlinn",
|
|
"staff_pin_description": "Bestëmmt ob Mataarbechter e PIN aginn mussen fir Treietransaktiounen ze veraarbechten.",
|
|
"required": "Erfuerderlech",
|
|
"required_desc": "Personal muss säin PIN bei all Transaktioun aginn. Recommandéiert fir d'Sécherheet.",
|
|
"optional": "Fakultativ",
|
|
"optional_desc": "Geschäfter kënne wielen ob PINe verlaangt ginn.",
|
|
"pin_disabled": "Deaktivéiert",
|
|
"pin_disabled_desc": "Personal-PINe ginn net benotzt. All Mataarbechter kann Transaktiounen veraarbechten.",
|
|
"pin_lockout_settings": "PIN-Sparrastellungen",
|
|
"max_failed_attempts": "Max. Fehlversich",
|
|
"max_failed_attempts_help": "Unzuel vu falschen Versich virun der Spär (3-10)",
|
|
"lockout_duration": "Spärauer (Minutten)",
|
|
"lockout_duration_help": "Wéi laang d'Spär no Fehlversich dauert (5-120 Minutten)",
|
|
"enrollment_settings": "Umeldungsastellungen",
|
|
"allow_self_enrollment": "Selbstumeldung erlaben",
|
|
"self_enrollment_desc": "Clienten kënne sech per QR-Code ouni Personal umellen",
|
|
"transaction_settings": "Transaktiouns-Astellungen",
|
|
"allow_cross_location": "Standuertiwergreifend Aléisung erlaben",
|
|
"cross_location_desc": "Clienten kënne Punkten an all Standuerter vum Händler aléisen",
|
|
"allow_void": "Stornéierungen erlaben",
|
|
"void_desc": "Personal kann Punkten/Stempelen bei Réckgaben stornéieren",
|
|
"save_settings": "Astellunge späicheren"
|
|
},
|
|
"analytics": {
|
|
"title": "Treie-Analytik",
|
|
"subtitle": "Plattformwäit Treieprogramm-Statistiken",
|
|
"loading": "Analytik gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vun der Analytik",
|
|
"filter_by_merchant": "No Händler filtréieren",
|
|
"search_merchants_placeholder": "Händler no Numm sichen...",
|
|
"showing_stats_for": "Statistike fir:",
|
|
"wallet_status": "Wallet-Integratiounsstatus",
|
|
"google_wallet": "Google Wallet",
|
|
"apple_wallet": "Apple Wallet",
|
|
"connected": "Verbonnen",
|
|
"error": "Feeler",
|
|
"not_configured": "Net konfiguréiert",
|
|
"issuer_id": "Aussteller-ID",
|
|
"project": "Projet",
|
|
"wallet_objects": "Wallet-Objeten",
|
|
"loyalty_classes": "Treieklassen",
|
|
"pass_type_id": "Pass-Typ-ID",
|
|
"team_id": "Team-ID",
|
|
"active_passes": "Aktiv Päss",
|
|
"quick_actions": "Schnellaktiounen",
|
|
"view_all_programs": "All Programmer kucken",
|
|
"manage_merchants": "Händler verwalten"
|
|
},
|
|
"program_edit": {
|
|
"title": "Programmkonfiguratioun",
|
|
"loading": "Konfiguratioun gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vun der Programmkonfiguratioun",
|
|
"create_subtitle": "Treieprogramm fir dësen Händler erstellen",
|
|
"edit_subtitle": "Programmkonfiguratioun beaarbechten",
|
|
"delete_title": "Treieprogramm läschen",
|
|
"delete_message": "D'Treieprogramm an all verbonnen Daten (Kaarten, Transaktiounen, Belounungen) ginn dauerhaft geläscht. Dëst kann net réckgängeg gemaach ginn.",
|
|
"delete_confirm": "Programm läschen"
|
|
}
|
|
},
|
|
"merchant": {
|
|
"program": {
|
|
"title": "Treieprogramm",
|
|
"subtitle": "Är Treieprogramm-Konfiguratioun.",
|
|
"edit_program": "Programm beaarbechten",
|
|
"no_program": "Keen Treieprogramm",
|
|
"no_program_desc": "Ärt Treieprogramm gouf nach net ageriicht. Erstellt eent fir Är Clienten ze belounegen.",
|
|
"create_program": "Programm erstellen"
|
|
},
|
|
"program_edit": {
|
|
"title": "Treie-Astellungen",
|
|
"page_title": "Treieprogramm-Astellungen",
|
|
"subtitle": "Konfiguréiert Ärt Treieprogramm",
|
|
"loading": "Astellunge gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun den Astellungen",
|
|
"delete_title": "Treieprogramm läschen",
|
|
"delete_message": "Ärt Treieprogramm an all verbonnen Daten (Kaarten, Transaktiounen, Belounungen) ginn dauerhaft geläscht. Dëst kann net réckgängeg gemaach ginn.",
|
|
"delete_confirm": "Programm läschen"
|
|
},
|
|
"analytics": {
|
|
"title": "Treie-Analytik",
|
|
"subtitle": "Treieprogramm-Statistiken fir all Är Geschäfter",
|
|
"loading": "Analytik gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vun der Analytik",
|
|
"no_program": "Keen Treieprogramm",
|
|
"no_program_desc": "Riicht en Treieprogramm an fir hei Analytik ze gesinn.",
|
|
"create_program": "Programm erstellen",
|
|
"quick_actions": "Schnellaktiounen",
|
|
"view_program": "Programm kucken",
|
|
"edit_program": "Programm beaarbechten"
|
|
}
|
|
},
|
|
"store": {
|
|
"terminal": {
|
|
"title": "Treie-Terminal",
|
|
"subtitle": "Treietransaktiounen veraarbechten",
|
|
"members": "Memberen",
|
|
"analytics": "Analytik",
|
|
"loading": "Treie-Terminal gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vum Terminal",
|
|
"not_setup": "Treieprogramm net ageriicht",
|
|
"not_setup_desc": "Ären Händler huet nach keen Treieprogramm konfiguréiert.",
|
|
"setup_program": "Treieprogramm ariichten",
|
|
"contact_admin": "Kontaktéiert Ären Administrateur fir d'Ariichtung ofzeschléissen.",
|
|
"find_customer": "Client fannen",
|
|
"search_placeholder": "E-Mail, Telefon oder Kaartnummer...",
|
|
"looking_up": "Sich leeft...",
|
|
"look_up_customer": "Client sichen",
|
|
"enroll_new_customer": "Neie Client umellen",
|
|
"customer_found": "Client fonnt",
|
|
"points_balance": "Punktestand",
|
|
"stamps": "Stempelen",
|
|
"x_more_for_reward": "Nach {count} fir d'Belounung",
|
|
"ready_to_redeem": "Prett fir anzeléisen!",
|
|
"add_stamp": "Stempel derbäisetzen",
|
|
"current": "Aktuell:",
|
|
"cooldown_active": "Waardezäit aktiv",
|
|
"redeem_stamps": "Stempelen aléisen",
|
|
"not_enough_stamps": "Nach net genuch Stempelen",
|
|
"earn_points": "Punkten sammelen",
|
|
"purchase_amount": "Akafsbetrag",
|
|
"points_to_award": "Punkten ze verginn:",
|
|
"award_points": "Punkten verginn",
|
|
"redeem_reward": "Belounung aléisen",
|
|
"select_reward": "Belounung wielen",
|
|
"select_reward_placeholder": "Belounung wielen...",
|
|
"points_after": "Punkten duerno:",
|
|
"search_to_process": "Sicht e Client fir eng Transaktioun ze veraarbechten",
|
|
"recent_transactions": "Rezent Transaktiounen un dësem Standuert",
|
|
"table_time": "Zäit",
|
|
"table_customer": "Client",
|
|
"table_type": "Typ",
|
|
"table_points": "Punkten",
|
|
"table_notes": "Notizen",
|
|
"no_recent_transactions": "Keng rezent Transaktiounen",
|
|
"enter_staff_pin": "Personal-PIN aginn",
|
|
"pin_authorize": "Gitt Äre Personal-PIN an fir dës Transaktioun ze autoriséieren.",
|
|
"clear": "Läschen",
|
|
"processing": "Veraarbechtung...",
|
|
"customer_not_found": "Client net fonnt. Dir kënnt hien als neit Member umellen.",
|
|
"error_lookup": "Feeler bei der Clientesich: {message}",
|
|
"transaction_failed": "Transaktioun feelgeschloen: {message}",
|
|
"stamp_added": "Stempel derbäigesat!",
|
|
"stamps_redeemed": "Stempelen agelées! Belounung kritt.",
|
|
"x_points_awarded": "{points} Punkten vergi!",
|
|
"reward_redeemed": "Belounung agelées: {name}"
|
|
},
|
|
"cards": {
|
|
"title": "Treie-Memberen",
|
|
"subtitle": "Memberen vun Ärem Treieprogramm kucken a verwalten",
|
|
"enroll_new": "Umellen",
|
|
"loading": "Membere gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun de Memberen",
|
|
"total_members": "Memberen insgesamt",
|
|
"active_30d": "Aktiv (30D)",
|
|
"new_this_month": "Nei dëse Mount",
|
|
"total_points_balance": "Gesamtpunktestand",
|
|
"search_placeholder": "No Numm, E-Mail, Telefon oder Kaart sichen...",
|
|
"all_status": "All Status",
|
|
"table_member": "Member",
|
|
"table_card_number": "Kaartnummer",
|
|
"table_points_balance": "Punktestand",
|
|
"table_last_activity": "Lescht Aktivitéit",
|
|
"table_status": "Status",
|
|
"table_actions": "Aktiounen",
|
|
"no_members": "Keng Membere fonnt",
|
|
"adjust_search": "Probéiert Är Sich unzepassen",
|
|
"enroll_first": "Mellt Ären éischte Client un"
|
|
},
|
|
"card_detail": {
|
|
"title": "Memberdetailer",
|
|
"loading": "Memberdetailer gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vum Member",
|
|
"points_balance": "Punktestand",
|
|
"total_earned": "Insgesamt verdéngt",
|
|
"total_redeemed": "Insgesamt agelées",
|
|
"member_since": "Member zënter",
|
|
"customer_information": "Clienteninformatioun",
|
|
"name": "Numm",
|
|
"email": "E-Mail",
|
|
"phone": "Telefon",
|
|
"birthday": "Gebuertsdag",
|
|
"card_details": "Kaartdetailer",
|
|
"card_number": "Kaartnummer",
|
|
"status": "Status",
|
|
"last_activity": "Lescht Aktivitéit",
|
|
"enrolled_at": "Ugemellt um",
|
|
"transaction_history": "Transaktiounsverlaf",
|
|
"table_date": "Datum",
|
|
"table_type": "Typ",
|
|
"table_points": "Punkten",
|
|
"table_location": "Standuert",
|
|
"table_notes": "Notizen",
|
|
"no_transactions": "Nach keng Transaktiounen"
|
|
},
|
|
"enroll": {
|
|
"title": "Client umellen",
|
|
"page_title": "Neie Client umellen",
|
|
"subtitle": "Neit Member bei Ärem Treieprogramm derbäisetzen",
|
|
"loading": "Lueden...",
|
|
"error_loading": "Feeler beim Luede vum Umeldungsformular",
|
|
"customer_information": "Clienteninformatioun",
|
|
"first_name": "Virnumm",
|
|
"last_name": "Nonumm",
|
|
"email": "E-Mail",
|
|
"phone": "Telefon",
|
|
"birthday": "Gebuertsdag",
|
|
"birthday_help": "Fir Gebuertsdagsbelounungen (fakultativ)",
|
|
"communication_preferences": "Kommunikatiounsastellungen",
|
|
"send_emails": "Promotiounsmaile schécken",
|
|
"send_sms": "Promotiounssms schécken",
|
|
"welcome_bonus": "Wëllkommensbonus",
|
|
"welcome_bonus_desc": "Client kritt {points} Bonuspunkten!",
|
|
"enroll_customer": "Client umellen",
|
|
"enrolling": "Umeldung...",
|
|
"customer_enrolled": "Client ugemellt!",
|
|
"starting_balance": "Ufankssolde:",
|
|
"x_points": "{count} Punkten",
|
|
"back_to_terminal": "Zréck zum Terminal",
|
|
"enroll_another": "Weider umellen",
|
|
"enrollment_failed": "Umeldung feelgeschloen: {message}"
|
|
},
|
|
"analytics": {
|
|
"title": "Treie-Analytik",
|
|
"subtitle": "Verfollegt d'Performance vun Ärem Treieprogramm",
|
|
"loading": "Analytik gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vun der Analytik",
|
|
"quick_actions": "Schnellaktiounen",
|
|
"open_terminal": "Terminal opmaachen",
|
|
"view_members": "Membere kucken",
|
|
"view_program": "Programm kucken"
|
|
},
|
|
"program": {
|
|
"title": "Treieprogramm",
|
|
"subtitle": "Är Treieprogramm-Konfiguratioun",
|
|
"edit_program": "Programm beaarbechten",
|
|
"loading": "Programm gëtt gelueden...",
|
|
"error_loading": "Feeler beim Luede vum Programm",
|
|
"no_program": "Keen Treieprogramm",
|
|
"no_program_desc": "Ären Händler huet nach keen Treieprogramm konfiguréiert.",
|
|
"create_program": "Programm erstellen",
|
|
"contact_admin": "Kontaktéiert Ären Administrateur fir en Treieprogramm anzerichten."
|
|
},
|
|
"settings": {
|
|
"title": "Treie-Astellungen",
|
|
"page_title": "Treieprogramm-Astellungen",
|
|
"subtitle": "Konfiguréiert Ärt Treieprogramm",
|
|
"back_to_program": "Zréck zum Programm",
|
|
"loading": "Astellunge gi gelueden...",
|
|
"error_loading": "Feeler beim Luede vun den Astellungen",
|
|
"access_restricted": "Zougang ageschränkt",
|
|
"owner_only": "Nëmmen den Geschäftseigentümer kann d'Treieprogramm-Astellungen verwalten.",
|
|
"delete_title": "Treieprogramm läschen",
|
|
"delete_message": "D'Treieprogramm an all verbonnen Daten (Kaarten, Transaktiounen, Belounungen) ginn dauerhaft geläscht. Dëst kann net réckgängeg gemaach ginn.",
|
|
"delete_confirm": "Programm läschen",
|
|
"program_created": "Programm erfollegräich erstellt",
|
|
"program_updated": "Programm erfollegräich aktualiséiert",
|
|
"program_deleted": "Treieprogramm geläscht",
|
|
"save_failed": "Späichere feelgeschloen: {message}",
|
|
"delete_failed": "Läsche feelgeschloen: {message}"
|
|
}
|
|
},
|
|
"storefront": {
|
|
"dashboard": {
|
|
"back_to_account": "Zréck zum Kont",
|
|
"my_loyalty": "Meng Treie",
|
|
"join_title": "Gitt Member vun eisem Belounungsprogramm!",
|
|
"join_subtitle": "Sammelt Punkten bei all Akaf an léist se géint Belounungen an.",
|
|
"join_now": "Elo bäitrieden",
|
|
"points_balance": "Punktestand",
|
|
"card_number": "Kaartnummer",
|
|
"show_card": "Kaart weisen",
|
|
"total_earned": "Insgesamt verdéngt",
|
|
"total_redeemed": "Insgesamt agelées",
|
|
"available_rewards": "Verfügbar Belounungen",
|
|
"no_rewards_yet": "Nach keng Belounungen verfügbar",
|
|
"ready_to_redeem": "Prett fir anzeléisen",
|
|
"x_more_to_go": "Nach {count}",
|
|
"redeem_hint": "Weist Är Kaart dem Personal fir Belounungen am Geschäft anzeléisen.",
|
|
"recent_activity": "Rezent Aktivitéit",
|
|
"view_all": "Alles kucken",
|
|
"no_transactions": "Nach keng Transaktiounen. Maacht en Akaf fir Punkten ze sammelen!",
|
|
"earn_redeem_locations": "Sammel- & Aléisungs-Standuerter",
|
|
"your_loyalty_card": "Är Treiekaart",
|
|
"show_to_staff": "Weist dëst dem Personal beim Akaf oder beim Aléise vu Belounungen."
|
|
},
|
|
"history": {
|
|
"back_to_loyalty": "Zréck zur Treie",
|
|
"title": "Transaktiounsverlaf",
|
|
"subtitle": "All Är Treiepunkttransaktiounen kucken",
|
|
"current_balance": "Aktuell Solde",
|
|
"total_earned": "Insgesamt verdéngt",
|
|
"total_redeemed": "Insgesamt agelées",
|
|
"no_transactions": "Nach keng Transaktiounen",
|
|
"balance": "Solde:",
|
|
"previous": "Zréck",
|
|
"next": "Weider",
|
|
"page_x_of_y": "Säit {page} vun {pages}"
|
|
}
|
|
},
|
|
"toasts": {
|
|
"program_activated": "Programm erfollegräich aktivéiert",
|
|
"program_deactivated": "Programm erfollegräich deaktivéiert",
|
|
"activate_failed": "Programm konnt net aktivéiert ginn: {message}",
|
|
"deactivate_failed": "Programm konnt net deaktivéiert ginn: {message}",
|
|
"program_deleted": "Programm erfollegräich geläscht",
|
|
"delete_failed": "Programm konnt net geläscht ginn: {message}",
|
|
"program_created": "Programm erfollegräich erstellt",
|
|
"program_updated": "Programm erfollegräich aktualiséiert",
|
|
"loyalty_program_created": "Treieprogramm erstellt",
|
|
"loyalty_program_deleted": "Treieprogramm geläscht",
|
|
"settings_saved": "Astellungen erfollegräich gespäichert",
|
|
"save_failed": "Späichere feelgeschloen: {message}",
|
|
"settings_save_failed": "Astellunge konnten net gespäichert ginn: {message}",
|
|
"create_failed": "Programm konnt net erstellt ginn: {message}",
|
|
"logo_required": "Logo-URL ass erfuerderlech fir d'Wallet-Integratioun."
|
|
}
|
|
}
|