{
  "common.brand": "retuno",
  "common.fieldHint": "Explanation for: {label}",
  "viewStays.close": "Close notice",
  "fieldProblem.missing": "Please fill in this field.",
  "fieldProblem.missingCheck": "Please tick this box.",
  "fieldProblem.missingFile": "Please choose a file.",
  "fieldProblem.missingChoice": "Please make a selection.",
  "fieldProblem.email": "Please enter a complete email address, for example name@example.com.",
  "fieldProblem.tooLow": "Please enter a number of {min} or more.",
  "fieldProblem.tooHigh": "Please enter no more than {max}.",
  "fieldProblem.wholeNumber": "Please enter a whole number.",
  "fieldProblem.checkEntry": "Please check this entry.",
  "draft.lostPhoto": "The photo you chose is gone after reloading – please choose it again.",
  "draft.lostFile": "The file you chose is gone after reloading – please choose it again.",
  "photoPreview.label": "Photo preview",
  "photoPreview.close": "Close preview",
  "photoRemove.label": "Delete photo",
  "photoRemove.title": "Delete this photo?",
  "photoRemove.sentence": "The photo will be gone for good. The history shows who deleted it and when.",
  "photoRemove.sentenceDraft": "The photo will be gone for good.",
  "photoRemove.confirm": "Yes, delete",
  "photoRemove.cancel": "Cancel",
  "photoRemove.done": "Photo deleted.",
  "photoRemove.error.closed": "This return is complete. Photos can no longer be deleted.",
  "photoRemove.error.unknown": "This photo no longer exists.",
  "photoRemove.error.mailed": "This photo has already been sent to the customer in a message and can no longer be deleted.",
  "photoRemove.removed": "(photo deleted)",
  "photoRemove.defectTitle": "Delete this report and its photo?",
  "photoRemove.defectSentence": "The report and its photo will be gone for good.",
  "common.signIn": "Sign in",
  "common.signOut": "Sign out",
  "common.createAccount": "Create account",
  "common.toDashboard": "Go to dashboard",
  "common.toHome": "Go to start page",
  "common.email": "Email",
  "common.password": "Password",
  "common.company": "Company",
  "common.language": "Language",
  "common.loading": "Loading…",
  "common.saving": "Saving …",
  "common.printLabel": "Print label",
  "common.requestRejected": "Request rejected.",
  "common.account": "Account",
  "nav.dashboard": "Dashboard",
  "nav.returns": "Returns",
  "nav.settings": "Settings",
  "nav.admin": "Administration",
  "role.owner": "Owner",
  "role.member": "Member",
  "area.returns": "Returns",
  "area.returns.hint": "see returns, approve them, refund them",
  "area.intake": "Returns desk",
  "area.intake.hint": "book goods in, add photos and notes",
  "area.defects": "Defects",
  "area.defects.hint": "report defects from the warehouse: scan the SKU, attach a photo",
  "area.settings": "Settings",
  "area.settings.hint": "return policy, reasons, addresses, shipping, warehouse",
  "area.admin": "Administration",
  "area.admin.hint": "team, API keys, shop connection, operations",
  "password.hint": "At least {min} characters. No character-class rules — length is what counts.",
  "password.problem.tooShort": "The password needs at least {min} characters.",
  "password.problem.tooLong": "The password may not be longer than {max} characters.",
  "password.problem.knownLeak": "This password appears on known lists of leaked passwords.",
  "password.problem.containsEmail": "The password may not contain the email address.",
  "common.changePassword": "Change password",
  "page.home.title": "retuno — Returns management for Shopify",
  "page.home.meta.description": "Returns management for Shopify: customers start returns on their own, retuno calculates every refund to the cent and pays it out via Shopify. Pay per return.",
  "page.home.requestAccess": "Request access",
  "page.home.globeLabel": "A globe on which parcels flow back from many countries to one warehouse.",
  "page.home.lead.name": "Name",
  "page.home.lead.company": "Company",
  "page.home.lead.email": "Email",
  "page.home.lead.shopUrl": "Store address (optional)",
  "page.home.lead.volume": "Returns per month",
  "page.home.lead.volume.choose": "Please choose",
  "page.home.lead.volume.under_100": "under 100",
  "page.home.lead.volume.100_500": "100 to 500",
  "page.home.lead.volume.500_2000": "500 to 2,000",
  "page.home.lead.volume.over_2000": "more than 2,000",
  "page.home.lead.message": "Message (optional)",
  "page.home.lead.website": "Website (leave empty)",
  "page.home.lead.submit": "Request access",
  "page.home.lead.sending": "Sending …",
  "page.home.lead.error.fields": "Please check the highlighted fields.",
  "page.home.lead.error.name": "Please enter your name.",
  "page.home.lead.error.company": "Please name your company.",
  "page.home.lead.error.email": "This email address does not look complete.",
  "page.home.lead.error.shopUrl": "The store address must not contain spaces.",
  "page.home.lead.error.volume": "Please choose a range.",
  "page.home.lead.error.message": "The message is too long.",
  "page.home.lead.error.rateLimit": "We just received many requests from your connection. Please try again in an hour.",
  "page.home.eyebrow": "Returns management",
  "page.home.heading": "Every return, right back in Shopify.",
  "page.home.intro": "Customer portal, return labels, warehouse intake. retuno runs your returns inside Shopify, with rules that show their work on every refund.",
  "page.home.opening": "Now opening to our first shops.",
  "page.home.flow.eyebrow": "How it works",
  "page.home.flow.heading": "From first click to final refund.",
  "page.home.flow.lead": "Each step hands off to the next, and the return and refund live in Shopify itself.",
  "page.home.flow.portal.pill": "Portal",
  "page.home.flow.portal.title": "Self-service, no account needed.",
  "page.home.flow.portal.body": "Order number plus email or postcode, that’s it. Choose items, add a reason and photo, pick refund or exchange.",
  "page.home.flow.label.pill": "Label",
  "page.home.flow.label.title": "Your carrier account, your label.",
  "page.home.flow.label.body": "Generated automatically through your own DHL or Sendcloud account, then attached to the return in Shopify.",
  "page.home.flow.intake.pill": "Intake",
  "page.home.flow.intake.title": "Find it, check it, grade it.",
  "page.home.flow.intake.body": "Look up by tracking, order or return number. Snap photos on your phone via QR code. Handles unannounced parcels too.",
  "page.home.flow.refund.pill": "Refund",
  "page.home.flow.refund.title": "Money back or store credit.",
  "page.home.flow.refund.body": "Your rules work out the amount and show every step. The refund is issued in Shopify.",
  "page.home.features.eyebrow": "Features",
  "page.home.features.heading": "The whole return, in one tool.",
  "page.home.features.lead": "Rules, portal, warehouse, exchanges, analytics and support: six pieces, one flow.",
  "page.home.features.rules.title": "Rules that do the math.",
  "page.home.features.rules.body": "Return windows from delivery, reasons, conditional label fees. Quantity discounts recalculated on what the customer keeps.",
  "page.home.features.portal.title": "Your brand, all the way through.",
  "page.home.features.portal.body": "Your logo, colors and copy, in German and English. Customers never need an account.",
  "page.home.features.desk.title": "One desk for every parcel.",
  "page.home.features.desk.body": "Find, check, grade, restock: back into Shopify inventory, or into your ERP with an HTTP call.",
  "page.home.features.agent.title": "Just ask your returns.",
  "page.home.features.agent.body": "“Which reasons came up most this month?” Ask in your own words; retuno runs the numbers from your own data.",
  "page.home.features.service.title": "Your AI support, already briefed.",
  "page.home.features.service.body": "Missing item, wrong product, undeliverable parcel? Your AI support gets the details automatically, minus any personal data.",
  "page.home.features.exchange.title": "Exchanges that check stock first.",
  "page.home.features.exchange.body": "Swap for the same or a different variant. Or offer store credit, with an optional bonus on top.",
  "page.home.why.eyebrow": "Why retuno",
  "page.home.why.heading": "Built on Shopify. Calculated to the cent.",
  "page.home.why.lead": "The principles behind retuno. Every one of them ships in the product, not just on this page.",
  "page.home.why.native.title": "Inside Shopify, not next to it.",
  "page.home.why.native.body": "Returns, refunds and exchanges are created right in Shopify. No second system to reconcile by hand.",
  "page.home.why.math.title": "Every cent, accounted for.",
  "page.home.why.math.body": "You can trace every step of the calculation. Anything unclear becomes a case for your team, not a silent mistake.",
  "page.home.why.warehouse.title": "Made for the warehouse floor.",
  "page.home.why.warehouse.body": "You can log unannounced parcels too. Checked, graded, then restocked in Shopify or handed to your ERP via HTTP.",
  "page.home.why.window.title": "The clock starts at the doorstep.",
  "page.home.why.window.body": "Return windows count from the delivery date, not the order date. Your customers get every day you promised.",
  "page.home.why.ai.title": "AI that never invents a number.",
  "page.home.why.ai.body": "retuno calculates every number itself, from a fixed catalog of metrics. Not a single row of your return data leaves retuno.",
  "page.home.why.price.title": "Priced per return.",
  "page.home.why.price.body": "Your costs move with your return volume, from quiet weeks to the post-holiday rush.",
  "page.home.api.eyebrow": "For developers",
  "page.home.api.heading": "An API you can trust with money.",
  "page.home.api.body": "retuno is API-first. Read, create, approve, refund and cancel returns, and work with notes, labels and events, all through a REST API with clear permissions.",
  "page.home.api.point.idempotency": "Safe retries: if a refund call arrives twice, the money still moves only once.",
  "page.home.api.point.scopes": "Scoped keys. Moving money is its own checkbox.",
  "page.home.api.point.events": "Events per return, cursor-paginated lists, fixed limits.",
  "page.home.api.caption": "One call approves the refund your rules already calculated.",
  "page.home.lead.eyebrow": "Early Access",
  "page.home.lead.heading": "Let’s talk about your returns.",
  "page.home.lead.thanks": "Thanks, we’ve got your request.",
  "page.home.lead.thanksBody": "We’ll be in touch. There’s nothing else you need to do.",
  "page.home.footer.tagline": "Returns for Shopify.",
  "page.home.marquee.cent": "Refunds accurate to the cent",
  "page.home.marquee.shopify": "Shopify-native",
  "page.home.marquee.portal": "Self-service portal, no support tickets",
  "page.home.marquee.labels": "Return labels created automatically",
  "page.home.marquee.rules": "Rules instead of manual work",
  "page.home.marquee.exchange": "Exchanges instead of refunds",
  "page.home.marquee.warehouse": "Connected to your warehouse and ERP",
  "page.home.marquee.intake": "Intake with photo evidence",
  "page.home.marquee.clarify": "Review cases, not silent errors",
  "page.home.marquee.ai": "AI analysis of your returns",
  "page.home.marquee.price": "Pay per return",
  "page.home.marquee.api": "API-first by design",
  "page.ops.login.title": "Operations – Sign in",
  "page.ops.login.heading": "Operations",
  "page.ops.login.intro": "Access for the operator of retuno. Merchants sign in at retuno.ai.",
  "page.ops.login.code": "Code from your authenticator app",
  "page.ops.login.codeNote": "Six digits — or one of your recovery codes.",
  "page.ops.login.error.rejected": "Sign-in failed. Check your email, password and code.",
  "page.ops.login.error.rateLimit": "Too many attempts. Please try again in 15 minutes.",
  "page.ops.setup.title": "Operations – Set up access",
  "page.ops.setup.heading": "Set up access",
  "page.ops.setup.intro": "For {email}. This link works once and for 24 hours.",
  "page.ops.setup.invalid": "This link is no longer valid. It was already used or is older than 24 hours. Ask for a new one.",
  "page.ops.setup.stepApp": "1. Authenticator app",
  "page.ops.setup.qrLabel": "QR code for your authenticator app",
  "page.ops.setup.secretNote": "Scan the code with your authenticator app. Without a camera, enter this key by hand:",
  "page.ops.setup.stepPassword": "2. Password and first code",
  "page.ops.setup.passwordRepeat": "Repeat password",
  "page.ops.setup.code": "Code from the app",
  "page.ops.setup.submit": "Set up access",
  "page.ops.setup.error.mismatch": "The two passwords do not match.",
  "page.ops.setup.error.code": "The code does not match. Use the current one from the app.",
  "page.ops.setup.error.rateLimit": "Too many attempts. Please try again in 15 minutes.",
  "page.ops.setup.done.heading": "Access set up",
  "page.ops.setup.done.intro": "These are your eight recovery codes. Each works once in case you do not have your phone. Write them down now — they are shown only here and only this once.",
  "page.ops.setup.done.toLogin": "Go to sign-in",
  "page.ops.leads.title": "Operations – Requests",
  "page.ops.leads.heading": "Requests",
  "page.ops.leads.intro": "From “Request access” on retuno.ai, newest first. Signed in as {email}.",
  "page.ops.leads.empty": "No requests yet.",
  "page.ops.leads.meta": "{at} · Returns per month: {volume} · Language: {language} · Store: {shop}",
  "page.ops.leads.delete": "Delete …",
  "page.ops.leads.deleteConfirm": "Delete this request permanently? This cannot be undone.",
  "page.ops.leads.deleteNow": "Delete permanently",
  "page.ops.leads.deleted": "The request has been deleted.",
  "page.home.features.aiTag": "AI",
  "page.home.api.request": "Request",
  "page.home.api.response": "Response",
  "page.home.live.title": "Live",
  "page.home.live.today": "Today",
  "page.home.live.label": "Label created",
  "page.home.live.restocked": "Restocked",
  "page.home.live.refunded": "Refund released",
  "page.home.live.exchange": "Exchange created",
  "page.home.live.clarify": "Needs clarification: item missing",
  "page.home.live.auto": "Auto",
  "page.home.live.team": "Team",
  "page.home.mock.order": "Order #1042",
  "page.home.mock.product": "Hiking jacket, forest green",
  "page.home.mock.variant": "Size M · 1 item",
  "page.home.mock.portal.reason": "Reason",
  "page.home.mock.portal.reasonValue": "Too small",
  "page.home.mock.portal.refund": "Refund",
  "page.home.mock.portal.exchange": "Exchange",
  "page.home.mock.portal.done": "Submitted",
  "page.home.mock.label.title": "Return label created",
  "page.home.mock.label.carrier": "DHL · Return",
  "page.home.mock.label.mail": "Emailed to the customer",
  "page.home.mock.label.shopify": "Attached to the return in Shopify",
  "page.home.mock.desk.title": "Check-in desk",
  "page.home.mock.desk.photos": "3 photos from a phone",
  "page.home.mock.desk.putAway": "Restock",
  "page.home.mock.desk.putAwayDone": "Restocked",
  "page.home.mock.refund.title": "Refund",
  "page.home.mock.refund.discount": "Discount recalculated",
  "page.home.mock.refund.labelFee": "Label fee",
  "page.home.mock.refund.total": "Total",
  "page.home.mock.refund.done": "Released · refunded in Shopify",
  "page.home.mock.rules.window": "Window from delivery: day 12 of 30",
  "page.home.mock.rules.reason": "Reason “Too small”: label fee applies",
  "page.home.mock.rules.discount": "Volume discount recalculated on the kept quantity",
  "page.home.mock.rules.result": "Refund",
  "page.home.mock.brand.logo": "Your store",
  "page.home.mock.agent.question": "Which reasons came up most this month?",
  "page.home.mock.agent.answer": "Top reasons · this month",
  "page.home.mock.agent.r1": "Too small",
  "page.home.mock.agent.r2": "Not as expected",
  "page.home.mock.agent.r3": "Defective",
  "page.home.mock.service.event": "Item missing from the parcel",
  "page.home.mock.service.sent": "Handed to your AI customer service",
  "page.home.mock.service.private": "without personal data",
  "page.home.mock.exchange.from": "Size M",
  "page.home.mock.exchange.to": "Size L",
  "page.home.mock.exchange.stock": "in stock",
  "page.home.mock.exchange.credit": "Store credit with bonus",
  "page.login.forgot": "Forgot your password?",
  "page.login.resetDone": "Your password is set. Sign in with it.",
  "page.forgot.title": "Forgot password",
  "page.forgot.heading": "Forgot password",
  "page.forgot.lead": "Enter your email address. If there is an account for it, we will send you a link where you can set a new password.",
  "page.forgot.submit": "Send the link",
  "page.forgot.sent": "If there is an account for this address, the mail is on its way. It is valid for one hour. Check your spam folder too.",
  "page.forgot.error.rateLimit": "Too many attempts. Try again in {minutes} minutes.",
  "page.reset.title": "New password",
  "page.reset.heading": "Set a new password",
  "page.reset.lead": "Choose a new password. Every signed-in device will be signed out afterwards — yours included.",
  "page.reset.newPassword": "New password",
  "page.reset.rule": "At least 12 characters.",
  "page.reset.submit": "Set the password",
  "page.reset.invalid": "This link is no longer valid. It expired, was already used, or never existed.",
  "page.reset.again": "Request a new link",
  "page.account.title": "Account",
  "page.account.heading": "Account and password",
  "page.account.signedInAs": "Signed in as {email}.",
  "page.account.currentPassword": "Current password",
  "page.account.newPassword": "New password",
  "page.account.rule": "At least 12 characters.",
  "page.account.submit": "Change password",
  "page.account.saved": "Password changed. Every other device is signed out; this one stays signed in.",
  "page.account.error.wrongCurrent": "The current password is not right.",
  "page.account.error.unchanged": "The new password is the same as the old one.",
  "mail.passwordReset.subject": "New password for {shop}",
  "mail.passwordReset.intro": "Someone asked for a new password for your account. You can set one here:",
  "mail.passwordReset.action": "Set a new password: {url}",
  "mail.passwordReset.button": "Set new password",
  "mail.passwordReset.expiry": "The link is valid until {date}. After that you need a new one.",
  "mail.passwordReset.unexpected": "If you did not ask for this, you can ignore this mail — your password stays as it is. If it keeps happening, let us know.",
  "mail.passwordReset.closing": "Kind regards\nYour team at {shop}",
  "mail.overviewLink.subject": "Your returns at {shop}",
  "mail.overviewLink.intro": "Here is your link to all returns you registered at {shop} with this email address.",
  "mail.overviewLink.action": "View my returns: {url}",
  "mail.overviewLink.button": "View my returns",
  "mail.overviewLink.expiry": "The link is valid until {time} and works only once. After that you can request a new one in the portal.",
  "mail.overviewLink.unexpected": "If you did not request it, you can simply ignore this email. Without the link, nobody can see your returns.",
  "mail.overviewLink.closing": "Kind regards\nYour team at {shop}",
  "page.login.title": "Sign in",
  "page.login.heading": "Sign in",
  "page.login.error.credentials": "Email address or password is not correct.",
  "page.login.error.rateLimit": "Too many attempts. Please try again in {minutes} minutes.",
  "page.register.title": "Create account",
  "page.register.heading": "Create account",
  "page.register.intro": "The first account is the owner. Further roles are invited later.",
  "page.register.error.emailNotPossible": "This email address cannot be registered. If an account already exists, please sign in.",
  "page.register.error.companyMissing": "Please enter a company name.",
  "page.register.error.rateLimit": "Too many registrations. Please try again later.",
  "page.register.error.closed": "Registration is not open on this environment.",
  "page.settings.title": "Settings",
  "page.settings.heading": "Settings",
  "page.settings.back": "Back to settings",
  "page.settings.save": "Save",
  "page.settings.saveDefault": "Keyboard route: saves the changes here",
  "page.settings.readOnly": "Your role may read these settings but not change them.",
  "page.settings.nothingActive": "Nothing is set up here yet — nothing applies.",
  "list.remove": "Remove",
  "list.removeAsk": "Really remove this entry?",
  "list.removeConfirm": "Yes, remove",
  "list.removeCancel": "Cancel",
  "list.removeHint": "The row leaves the form right away. It is gone for good once you save.",
  "list.staged": "The list has changed but is not saved yet. Check it and save below.",
  "page.settingsShop.title": "Shop connection",
  "page.settingsShop.hubHint": "Shopify domain, connection status and the address of your return portal.",
  "page.settingsTeam.title": "Team",
  "page.settingsTeam.hubHint": "Members of this account, their areas, and open invitations.",
  "page.adminOperations.privacy.viaApiKey": "via API key {name}",
  "page.settingsApi.title": "API access",
  "page.settingsApi.hubHint": "Keys for the retuno API, and what each of them is allowed to do.",
  "page.adminIntegrations.title": "Integrations",
  "page.adminIntegrations.hubHint": "Connections to other tools — today kefo.ai for customer service.",
  "page.adminIntegrations.intro": "This is where you connect retuno to tools outside Shopify. Each connection stays off until you switch it on.",
  "page.adminIntegrations.noShop": "No shop is connected yet.",
  "page.adminIntegrations.mayNotManage": "You can view this connection. Changing it needs the right to manage API access.",
  "page.adminIntegrations.unknownIntent": "This page does not know that action. Reload the page and try again.",
  "page.adminIntegrations.kefo.heading": "kefo.ai",
  "page.adminIntegrations.kefo.explained": "kefo.ai is the tool an AI agent uses to answer customer enquiries. retuno only places special cases there that Shopify does not show — for example that a registered item was missing from the package, or that a parcel came back undelivered. Refunds, exchanges and emails are already in Shopify and are not sent. Names, email addresses and postal addresses are never sent.",
  "page.adminIntegrations.kefo.notLive": "Nothing goes out to kefo.ai from this environment — neither entries nor a connection test. Only production sends. The preview below still shows what would be sent.",
  "page.adminIntegrations.kefo.keyLabel": "Key",
  "page.adminIntegrations.kefo.keyNone": "No key stored",
  "page.adminIntegrations.kefo.keySet": "Stored · ends in",
  "page.adminIntegrations.kefo.sendingLabel": "Sending",
  "page.adminIntegrations.kefo.sendingOn": "On since {date}",
  "page.adminIntegrations.kefo.sendingOff": "Off",
  "page.adminIntegrations.kefo.lastSentLabel": "Last sent",
  "page.adminIntegrations.kefo.lastSentNone": "Nothing yet",
  "page.adminIntegrations.kefo.testedLabel": "Connection last tested successfully",
  "page.adminIntegrations.kefo.testedNone": "Not yet",
  "page.adminIntegrations.kefo.lastErrorLabel": "Last error",
  "page.adminIntegrations.kefo.keyField": "kefo.ai API key",
  "page.adminIntegrations.kefo.keyFieldHint": "The key starts with ock_. It is stored encrypted and never shown again afterwards — only its last four characters.",
  "page.adminIntegrations.kefo.keySave": "Save key",
  "page.adminIntegrations.kefo.keyReplace": "Replace key",
  "page.adminIntegrations.kefo.keyRemove": "Remove key",
  "page.adminIntegrations.kefo.keySaved": "The key is saved. Test the connection before you switch sending on.",
  "page.adminIntegrations.kefo.keyRemoved": "The key is removed. Nothing goes out to kefo.ai any more.",
  "page.adminIntegrations.kefo.error.keyMissing": "Please enter the key.",
  "page.adminIntegrations.kefo.error.keyFormat": "That does not look like a kefo.ai key. It starts with ock_ and contains no spaces.",
  "page.adminIntegrations.kefo.enable": "Switch sending on",
  "page.adminIntegrations.kefo.disable": "Switch sending off",
  "page.adminIntegrations.kefo.enableExplained": "From now on, new special cases go to kefo.ai — nothing from the past. The preview below shows which texts these are.",
  "page.adminIntegrations.kefo.disableExplained": "After that, nothing goes out to kefo.ai any more. What is already there stays there.",
  "page.adminIntegrations.kefo.enableNeedsKey": "Sending cannot be switched on without a key.",
  "page.adminIntegrations.kefo.enabledNow": "Sending is switched on. New special cases go to kefo.ai from now on.",
  "page.adminIntegrations.kefo.disabledNow": "Sending is switched off.",
  "page.adminIntegrations.kefo.testButton": "Test connection",
  "page.adminIntegrations.kefo.testExplained": "Asks kefo.ai, read-only, for its latest entry. Nothing is created.",
  "page.adminIntegrations.kefo.test.ok": "The connection works: kefo.ai accepted the key.",
  "page.adminIntegrations.kefo.test.environment": "No call goes out to kefo.ai from this environment. The test is only available in production.",
  "page.adminIntegrations.kefo.test.noKey": "No key is stored.",
  "page.adminIntegrations.kefo.test.keyUnreadable": "The stored key cannot be read. Please enter it again.",
  "page.adminIntegrations.kefo.test.keyRefused": "kefo.ai refused the key. Check that it is complete and still valid.",
  "page.adminIntegrations.kefo.test.unreachable": "kefo.ai is not answering right now. Try again in a few minutes.",
  "page.adminIntegrations.kefo.test.answer": "kefo.ai answered unexpectedly. Try again later; if it stays like this, get in touch with us.",
  "page.adminIntegrations.preview.heading": "Preview: what would be sent",
  "page.adminIntegrations.preview.explained": "The latest special cases of the past 30 days, in exactly the wording the kefo.ai agent receives — in English, as an instruction to it. “Critical” means the agent must not act against it. The preview is there even while sending is off.",
  "page.adminIntegrations.preview.empty": "Nothing in the past 30 days would go to kefo.ai.",
  "page.adminIntegrations.preview.critical": "Critical",
  "page.adminIntegrations.preview.info": "Info",
  "page.adminIntegrations.preview.state.none": "not sent",
  "page.adminIntegrations.preview.state.queued": "waiting to be sent",
  "page.adminIntegrations.preview.state.sent": "sent",
  "page.adminIntegrations.preview.state.duplicate": "already at kefo.ai",
  "page.adminIntegrations.preview.state.failed": "not sent — see last error",
  "page.settingsBranding.title": "Portal design",
  "page.settingsBranding.hubHint": "Your portal logo — what customers see above every step.",
  "page.settingsBranding.logoChoose": "Choose a logo file",
  "page.settingsBranding.logoHint": "PNG, JPEG or WebP, up to {megabytes} MB. A transparent background works best.",
  "page.settingsBranding.logoSave": "Save logo",
  "page.settingsBranding.logoRemove": "Remove logo",
  "page.settingsBranding.logoPreviewAlt": "Your saved logo",
  "page.settingsBranding.noLogo": "No logo yet — the portal shows your shop name.",
  "page.settingsBranding.faviconHeading": "Favicon",
  "page.settingsBranding.faviconChoose": "Choose favicon file",
  "page.settingsBranding.faviconHint": "PNG, at most {kilobytes} KB. Ideally square, for example 512 × 512 pixels.",
  "page.settingsBranding.faviconSave": "Save favicon",
  "page.settingsBranding.faviconRemove": "Remove favicon",
  "page.settingsBranding.faviconPreviewAlt": "Your uploaded favicon",
  "page.settingsBranding.noFavicon": "No favicon uploaded yet — the portal’s browser tab shows the retuno icon.",
  "page.settingsBranding.saved": "Saved. Your customers see it from now on.",
  "page.settingsBranding.error.shopMissing": "Connect your shop first, then you can design the portal.",
  "page.settingsBranding.error.fileMissing": "Choose a file.",
  "page.settingsBranding.error.tooLarge": "That file is too large.",
  "page.settingsBranding.error.unsupported": "We cannot display that format. Use PNG, JPEG or WebP.",
  "page.settingsBranding.error.empty": "That file is empty or damaged — fewer than twelve bytes arrived.",
  "page.settingsBranding.brandHeading": "Brand name",
  "page.settingsBranding.brandLabel": "Brand name",
  "page.settingsBranding.brandHint": "Shown in the emails to your customers, as the sender and at the top of the customer portal — instead of the shop name from Shopify. Leave empty to use the shop name. At most {max} characters.",
  "page.settingsBranding.brandSave": "Save name",
  "page.settingsBranding.brandSaved": "Saved. The next email carries this name.",
  "page.settingsBranding.brandNone": "No brand name set — emails and the customer portal show the shop name from Shopify.",
  "page.settingsBranding.brandReadOnly": "Emails and the customer portal show the brand name “{name}”.",
  "page.settingsBranding.error.brandTooLong": "The brand name is too long — at most {max} characters. Nothing was saved.",
  "page.settingsBranding.noticeHeading": "Notice for your customers",
  "page.settingsBranding.noticeHint": "A short line your customers read in the portal — on the start page and again before they submit their return. Meant for anything that is different right now: \"Holiday season, please allow a little extra time.\" Empty means no notice is shown.",
  "page.settingsBranding.noticeLocale.de": "German",
  "page.settingsBranding.noticeLocale.en": "English",
  "page.settingsBranding.noticeFieldHint": "At most {max} characters. An empty field means no notice is shown in that language.",
  "page.settingsBranding.noticeSave": "Save notice",
  "page.settingsBranding.noticeSaved": "Saved. Your customers read this in the portal from now on; an emptied field means nothing is shown there any more.",
  "page.settingsBranding.noticeNone": "No notice yet — nothing appears in this spot in the portal.",
  "page.settingsBranding.noticeReadOnly": "A notice is set. Changing it needs permission to manage settings.",
  "page.settingsBranding.error.noticeTooLong": "The notice in {language} is too long — at most {max} characters.",
  "page.settingsBranding.portalHeading": "Order number and background in the portal",
  "page.settingsBranding.prefixLabel": "Order number prefix",
  "page.settingsBranding.prefixHint": "Already filled in when the customer enters their order number, for example FLK. Leave empty if your order numbers have no prefix.",
  "page.settingsBranding.backgroundFromLabel": "Background: gradient from",
  "page.settingsBranding.backgroundToLabel": "to",
  "page.settingsBranding.backgroundHint": "Two colours as hex values, for example #424A30 and #8A9D7B. Leave empty for the light default.",
  "page.settingsBranding.portalSave": "Save prefix and colours",
  "page.settingsBranding.portalSaved": "Saved. Your customers see it in the portal right away.",
  "page.settingsBranding.portalNone": "No prefix and no gradient set — the portal shows the light default.",
  "page.settingsBranding.portalReadOnly": "A prefix or gradient is set. Whoever may manage the settings can change it.",
  "page.settingsBranding.error.prefixInvalid": "The prefix may have at most {max} characters, without spaces or quotation marks. Nothing was saved.",
  "page.settingsBranding.error.backgroundInvalid": "Please enter both colours as hex values, for example #424A30 — or leave both fields empty. Nothing was saved.",
  "page.settingsContact.title": "Return address & contact",
  "page.settingsContact.hubHint": "Return address, support email and the links to your policy, imprint and privacy pages.",
  "page.settingsMail.title": "Customer emails",
  "page.settingsMail.hubHint": "Which emails your customers receive from us — one switch per email.",
  "page.settingsMail.heading": "Which emails go out",
  "page.settingsMail.defaultHint": "The “Parcel arrived” and “Return completed” emails stay off until you switch them on. All others are on until you change them — your customers keep receiving exactly what they received before.",
  "page.settingsMail.noTransport": "Email delivery is not set up for this shop yet. These switches are still saved and take effect as soon as it runs.",
  "page.settingsMail.saved": "Saved.",
  "page.settingsMail.returnRequested.name": "Return registered confirmation",
  "page.settingsMail.returnRequested.when": "Goes out as soon as someone registers a return in the portal.",
  "page.settingsMail.returnRequested.off": "Switched off, your customers get no confirmation by email. The portal receipt stays and then says explicitly that it is the only record.",
  "page.settingsMail.returnLabel.name": "Return label",
  "page.settingsMail.returnLabel.when": "Goes out as soon as a label has been bought from the carrier — with the label attached.",
  "page.settingsMail.returnLabel.off": "Switched off, the label does not arrive by email. It stays downloadable from the portal receipt; whoever loses that link no longer has it.",
  "page.settingsMail.returnWithdrawn.name": "Cancellation by the customer",
  "page.settingsMail.returnWithdrawn.when": "Goes out as soon as a customer cancels their own return in the portal.",
  "page.settingsMail.returnWithdrawn.off": "Switched off, your customers get nothing by email after cancelling. The portal receipt still shows the cancellation and how to start a new return.",
  "page.settingsMail.returnCanceled.name": "Cancellation by you",
  "page.settingsMail.returnCanceled.when": "Goes out when you cancel a return and leave the box “Email the customer about the cancellation” ticked. This switch is the default for that box.",
  "page.settingsMail.returnCanceled.off": "Switched off, the box is empty by default — you can still tick it for a single case. Without the email, your customers learn about the cancellation only from the portal receipt.",
  "page.settingsMail.refundRejected.name": "Refund declined",
  "page.settingsMail.refundRejected.when": "Goes out when you choose “Decline refund” on a return (on the return page or through the API) and leave the box “Email the customer” ticked — with the reason you pick. This switch is the default for that box.",
  "page.settingsMail.refundRejected.off": "Switched off, the box is empty by default when declining — you can still tick it for a single case. Without the email, your customers learn about the decline only when they look at their return in the portal.",
  "page.settingsMail.returnArrived.name": "Parcel arrived",
  "page.settingsMail.returnArrived.when": "Goes out once the first item of this return has been checked and saved at the intake desk (or the return has been saved via “Record a return”) — 30 minutes later. If the return is completed by then, only the “Return completed” email goes out.",
  "page.settingsMail.returnArrived.off": "Switched off, your customers get no email when their parcel has reached you.",
  "page.settingsMail.returnClosed.name": "Return completed",
  "page.settingsMail.returnClosed.when": "Goes out once a return is completed and its money has been booked. The email states what was booked: a refund with its amount, store credit or an exchange. If nothing was booked, no email goes out.",
  "page.settingsMail.returnClosed.off": "Switched off, your customers get no email from you when the return is completed. The confirmation Shopify sends for a refund still goes out.",
  "page.settingsTexts.title": "Wording",
  "page.settingsTexts.hubHint": "Every text your customers read — in the portal and in the emails, in German and English.",
  "page.settingsTexts.heading": "Portal and email texts",
  "page.settingsTexts.defaultHint": "Every field is empty to begin with, and empty means the standard text — it is printed under each field. Clearing a field again brings the standard text back.",
  "page.settingsTexts.localeHeading.de": "German",
  "page.settingsTexts.localeHeading.en": "English",
  "page.settingsTexts.placeholders": "Placeholders: {names}",
  "page.settingsTexts.placeholdersNone": "No placeholders in this text.",
  "page.settingsTexts.reset": "Reset to standard",
  "page.settingsTexts.resetDone": "Reset to the standard text.",
  "page.settingsTexts.save": "Save this section",
  "page.settingsTexts.saveDefault": "Keyboard: store what you changed here",
  "page.settingsTexts.saved": "Saved.",
  "page.settingsTexts.count.one": "{count} text",
  "page.settingsTexts.count.other": "{count} texts",
  "page.settingsTexts.ownCount.one": "{count} in your own words",
  "page.settingsTexts.ownCount.other": "{count} in your own words",
  "page.settingsTexts.problemUnknown": "{names} does not exist in this text. Allowed here: {allowed}",
  "page.settingsTexts.problemUnknownNone": "{names} does not exist in this text, and this text takes no placeholders at all.",
  "page.settingsTexts.problemMissing": "{names} has to stay in this text — without it the email leads nowhere and its recipient is locked out.",
  "page.settingsTexts.technicalWarning": "These texts are not read, they are spoken aloud or stand in for an image. Someone using a screen reader depends on them being precise. Nothing here checks whether your wording still does that — when in doubt, leave the standard.",
  "page.settingsTexts.previewMail": "Preview this email",
  "page.settingsTexts.previewPortal": "Open this step in the portal",
  "page.settingsTexts.section.technical": "Technical labels",
  "page.settingsTexts.section.shared": "Every portal page",
  "page.settingsTexts.section.start": "Portal · Step 1, find the order",
  "page.settingsTexts.section.items": "Portal · Step 2, pick the items",
  "page.settingsTexts.section.details": "Portal · Step 3, reason and photo",
  "page.settingsTexts.section.shipping": "Portal · Step 4, the way back",
  "page.settingsTexts.section.review": "Portal · Step 5, check and send",
  "page.settingsTexts.section.done": "Portal · Sent",
  "page.settingsTexts.section.receipt": "Portal · The receipt page",
  "page.settingsTexts.section.label": "Portal · Return label and QR code",
  "page.settingsTexts.section.exchange": "Portal · Exchange",
  "page.settingsTexts.section.outcome": "Portal · Refund, credit, exchange",
  "page.settingsTexts.section.status": "Portal · Status of a return",
  "page.settingsTexts.section.step": "Portal · Names of the steps",
  "page.settingsTexts.section.footer": "Portal · Footer",
  "page.settingsTexts.section.returnRequested": "Email · Return registered",
  "page.settingsTexts.section.returnLabel": "Email · Return label",
  "page.settingsTexts.section.returnWithdrawn": "Email · Return cancelled",
  "page.settingsTexts.section.returnCanceled": "Email · Return closed by you",
  "page.settingsTexts.section.refundRejected": "Email · Refund declined",
  "page.settingsTexts.section.returnArrived": "Email · Parcel arrived",
  "page.settingsTexts.section.returnClosed": "Email · Return completed",
  "page.settingsTexts.section.merchantMessage": "Email · Your message to a customer",
  "page.settingsTexts.section.teamInvitation": "Email · Team invitation",
  "page.settingsTexts.section.passwordReset": "Email · Password reset",
  "page.settingsTexts.section.overview": "Portal · All my returns",
  "page.settingsTexts.section.overviewLink": "Email · Link to the returns overview",
  "page.settingsTexts.standard": "Standard: {text}",
  "page.settingsContact.saved": "Saved.",
  "page.settingsContact.addressHeading": "Return address",
  "page.settingsContact.addressHint": "Shown in the portal as soon as a customer chooses to ship the parcel themselves, and on the receipt. Either all five lines or none — half an address is none.",
  "page.settingsContact.company": "Company",
  "page.settingsContact.street": "Street and number",
  "page.settingsContact.zip": "Postcode",
  "page.settingsContact.city": "City",
  "page.settingsContact.country": "Country",
  "page.settingsContact.countryHint": "Written out, the way it should appear on the parcel — for example Germany.",
  "page.settingsContact.addressLive": "Your customers currently see this address in the portal.",
  "page.settingsContact.addressMissing": "No return address yet. Customers who ship the parcel themselves are currently told they will get the address by email — and that email does not go out yet.",
  "page.settingsContact.supportHeading": "Support",
  "page.settingsContact.supportEmail": "Support email",
  "page.settingsContact.supportEmailHint": "Shown at the bottom of every portal page, so nobody who cannot find their order is left with nothing.",
  "page.settingsContact.zendeskTitle": "Zendesk",
  "page.settingsContact.zendeskMissing": "not set",
  "page.settingsContact.zendeskSubdomain": "Zendesk subdomain",
  "page.settingsContact.zendeskHint": "For your team only: every return then shows a link next to the customer's e-mail that searches for it in your Zendesk. The first part of your address, e.g. “myshop” for myshop.zendesk.com. Leave it empty for no link.",
  "page.settingsContact.legalHeading": "Legal pages",
  "page.settingsContact.legalHint": "Linked at the bottom of every portal page. Full addresses starting with https://; what you leave empty is not shown.",
  "page.settingsContact.legalCount.one": "{count} of 3 stored",
  "page.settingsContact.legalCount.other": "{count} of 3 stored",
  "page.settingsContact.policyUrl": "Return policy",
  "page.settingsContact.imprintUrl": "Imprint",
  "page.settingsContact.privacyUrl": "Privacy policy",
  "page.settingsContact.error.supportEmail": "That does not look like an email address.",
  "page.settingsContact.error.policyUrl": "The return policy link needs a full address starting with http:// or https://.",
  "page.settingsContact.error.imprintUrl": "The imprint link needs a full address starting with http:// or https://.",
  "page.settingsContact.error.privacyUrl": "The privacy link needs a full address starting with http:// or https://.",
  "page.settingsContact.error.addressIncomplete": "The return address is incomplete. Fill in all five lines — the portal only shows a complete address.",
  "page.settingsContact.error.zendeskSubdomain": "That does not look like a Zendesk subdomain. It is the first part of the address, e.g. “myshop” for myshop.zendesk.com — letters, digits and hyphens only.",
  "page.settingsContact.error.shopMissing": "Connect a shop first — these settings belong to it.",
  "page.settingsAccess.title": "Block and allow lists",
  "page.settingsAccess.hubHint": "Keep single orders, customers or tagged articles out of the return portal — and let named exceptions back in.",
  "page.settingsAccess.orderRule": "The order of precedence: allow list beats block list beats loyalty rule beats return window. An order on the allow list can be registered even after the window has ended.",
  "page.settingsAccess.entriesNone": "Nothing is blocked or allowed right now — every order follows the return policy.",
  "page.settingsAccess.entriesLive.one": "{count} entry is in effect.",
  "page.settingsAccess.entriesLive.other": "{count} entries are in effect.",
  "page.settingsAccess.allowedHeading": "Allow list",
  "page.settingsAccess.allowedHint": "The exception you grant by hand. Whatever is listed here can be registered — even if it is blocked below, and even after the return window has ended.",
  "page.settingsAccess.blockedHeading": "Block list",
  "page.settingsAccess.groupEntries.one": "{count} entry",
  "page.settingsAccess.groupEntries.other": "{count} entries",
  "page.settingsAccess.blockedHint": "Cannot be registered in the portal. Customers see a neutral message and your support address — never a reason.",
  "page.settingsAccess.productHeading": "Articles by product tag",
  "page.settingsAccess.productHint": "Tags you maintain on the product in Shopify. They restrict the article, not the order — and every restriction is shown to the customer with its reason.",
  "page.settingsAccess.orderNames": "Order numbers",
  "page.settingsAccess.orderNamesHint": "One per line, with or without the leading number sign.",
  "page.settingsAccess.customerEmails": "Customer email addresses",
  "page.settingsAccess.customerTags": "Customer tags",
  "page.settingsAccess.orderTags": "Order tags",
  "page.settingsAccess.allowedOrderTagsHint": "One per line. Practical if you set the tag in Shopify — 8returns calls that tag allowed_return.",
  "page.settingsAccess.allowedCustomerTagsHint": "One per line. The tag on the customer account in Shopify — it applies to every order of that account, including future ones. Guest orders without a customer account carry no tags; use the email for those.",
  "page.settingsAccess.extensionDays": "Return window extension (days)",
  "page.settingsAccess.extensionDaysHint": "Leave empty: anyone on the allow list can register without a deadline. With a number, the return window plus that many days applies to them; whoever misses that too is checked like everyone else.",
  "page.settingsAccess.overviewHeading": "Customer overview in the portal",
  "page.settingsAccess.overviewGroupHint": "What customers can see about their own returns in the portal.",
  "page.settingsAccess.overviewHint": "When switched on, a customer can enter their email address on the portal start page. They then receive a link by email that is valid for 30 minutes and works only once. It opens a list of all returns they registered with that address. Without the link, nobody sees this list.",
  "page.settingsAccess.overviewLabel": "Customers can see all their returns in the portal",
  "page.settingsAccess.overviewOn": "Switched on",
  "page.settingsAccess.overviewOff": "Switched off",
  "page.settingsAccess.loyaltyHeading": "Loyalty rule",
  "page.settingsAccess.loyaltyHint": "For customers who have already bought a lot from you, the return window does not apply or is longer. What counts is the spend of their Shopify customer account minus the refunds retuno has made. This is an approximation, and every deviation favours the customer: refunds outside retuno are missing, shipping counts, the return fee has already been deducted, and refunds are matched by the order email. The rule does not apply to guest orders without a customer account. In the customer portal, a loyal customer gets no instant label after the window has ended: the return goes to review, and the evaluation then lifts the window.",
  "page.settingsAccess.loyaltyThreshold": "Loyalty threshold (spend)",
  "page.settingsAccess.loyaltyThresholdHint": "Amount in your shop's currency ({currency}), with a decimal point, e.g. 300 or 300.00. Leave empty: the loyalty rule is off. Nothing is ever converted — if a customer's spend is in a different currency, the return window applies as usual.",
  "page.settingsAccess.loyaltyThresholdHintNoCurrency": "Amount in your shop's currency, with a decimal point, e.g. 300 or 300.00. Your shop's currency could not be read just now. Leave empty: the loyalty rule is off.",
  "page.settingsAccess.loyaltyExtensionDays": "Extension for loyal customers (days)",
  "page.settingsAccess.loyaltyExtensionDaysHint": "Leave empty: no return window applies to loyal customers. With a number, the return window plus that many days applies to them; whoever misses that too is checked like everyone else.",
  "page.settingsAccess.loyaltyOn": "From {amount}",
  "page.settingsAccess.loyaltyOff": "Switched off",
  "page.settingsAccess.perLine": "One per line.",
  "page.settingsAccess.noReturn": "Not returnable at all",
  "page.settingsAccess.noReturnHint": "The article does not appear for selection. Common convention: no-return.",
  "page.settingsAccess.noReturnConfirm": "Can be registered with confirmation (hygiene items)",
  "page.settingsAccess.noReturnConfirmHint": "The customer can register these items if they confirm on the item page that they are sending them back unopened and in their original packaging. Without the tick, they are not offered for selection.",
  "page.settingsAccess.noRefund": "No refund to the payment method",
  "page.settingsAccess.noRefundHint": "Store credit and exchange stay available. Common convention: no-refund.",
  "page.settingsAccess.noExchange": "No exchange",
  "page.settingsAccess.noExchangeHint": "Refund and store credit stay available. Common convention: no-exchange.",
  "page.settingsAccess.reasonLabel": "Reason shown to customers ({language})",
  "page.settingsAccess.reasonHint": "The REASON this item cannot go back \u2014 in the portal it sits right next to \u201cNot returnable\u201d. Write a reason, not a condition: \u201cExcluded for hygiene reasons once the seal is opened.\u201d rather than \u201creturnable only while the seal is intact\u201d \u2014 the second sentence contradicts the block standing next to it. Leave it empty and customers see only the general note, as before.",
  "page.settingsAccess.exceptionHeading": "Exception for one day",
  "page.settingsAccess.exceptionHint": "If the period for a defect has expired, the customer portal no longer offers the solution. Here you can unlock it again for one order for 24 hours, for example after an email from the customer. During that time the customer can choose the solution in the portal again. The evaluation will still put the return in front of you for review afterwards.",
  "page.settingsAccess.exceptionOrder": "Order number",
  "page.settingsAccess.exceptionOrderHint": "For example #1044",
  "page.settingsAccess.exceptionGrant": "Unlock for 24 hours",
  "page.settingsAccess.exceptionGranted": "{order} is unlocked until {until}.",
  "page.settingsAccess.exceptionListHeading": "Active exceptions",
  "page.settingsAccess.exceptionRow": "{order} – until {until}, unlocked by {name}",
  "page.settingsAccess.exceptionNone": "No active exception.",
  "page.settingsAccess.exceptionError.empty": "Enter an order number.",
  "page.settingsAccess.exceptionError.notFound": "This order number does not exist in your shop.",
  "page.settingsAccess.exceptionError.shopify": "Shopify did not respond. Please try again shortly.",
  "page.settingsReasons.title": "Return reasons",
  "page.settingsReasons.hubHint": "Pick reasons from your Shopify catalogue, name them in German and English, and decide where a photo is required.",
  "page.settingsReasons.saved": "Saved.",
  "page.settingsReasons.empty": "No reasons yet. Create the portal scaffold under Shop connection — the reasons come from your Shopify catalogue.",
  "page.settingsReasons.activeHeading.one": "{count} reason in the portal",
  "page.settingsReasons.activeHeading.other": "{count} reasons in the portal",
  "page.settingsReasons.activeHint": "This is what your customers see, in this order. Lower numbers come first.",
  "page.settingsReasons.catalogHeading.one": "{count} more reason in the catalogue",
  "page.settingsReasons.catalogHeading.other": "{count} more reasons in the catalogue",
  "page.settingsReasons.catalogHint": "From your Shopify catalogue, currently hidden. Tick one to offer it.",
  "page.settingsReasons.search": "Find a reason",
  "page.settingsReasons.searchSubmit": "Search",
  "page.settingsReasons.searchReset": "Show all again",
  "page.settingsReasons.searchResult.one": "{count} of {total} reasons matches. {active} are shown in the portal in total.",
  "page.settingsReasons.searchResult.other": "{count} of {total} reasons match. {active} are shown in the portal in total.",
  "page.settingsReasons.searchEmpty": "No reason matches that. Try a shorter term, or show all again.",
  "page.settingsReasons.selectAll.one": "Tick the one shown",
  "page.settingsReasons.selectAll.other": "Tick all {count} shown",
  "page.settingsReasons.selectNone.one": "Untick the one shown",
  "page.settingsReasons.selectNone.other": "Untick all {count} shown",
  "page.settingsReasons.staged": "Ticks changed — nothing saved yet. Check the list and press Save.",
  "page.settingsReasons.show": "Show in the portal",
  "page.settingsReasons.summaryShown": "in the portal",
  "page.settingsReasons.summaryHidden": "not in the portal",
  "page.settingsReasons.nameDe": "Name in German",
  "page.settingsReasons.nameEn": "Name in English",
  "page.settingsReasons.position": "Order",
  "page.settingsReasons.photo": "Photo",
  "page.settingsReasons.photo.off": "Do not ask",
  "page.settingsReasons.photo.optional": "Optional",
  "page.settingsReasons.photo.required": "Required",
  "page.settingsReasons.comment": "Comment",
  "page.settingsReasons.comment.off": "Do not ask",
  "page.settingsReasons.comment.optional": "Optional",
  "page.settingsReasons.comment.required": "Required",
  "page.settingsReasons.shipping": "Return shipping",
  "page.settingsReasons.shipping.customerChooses": "Customer picks the return method",
  "page.settingsReasons.shipping.merchantDecides": "We contact the customer",
  "page.settingsReasons.shippingHint": "With “We contact the customer”, step 4 offers no return method — only the notice that you will be in touch, and it covers every other item in the same return. No label is created; receipt and confirmation email show neither address nor packing steps.",
  "page.settingsReasons.promptDe": "Question in German",
  "page.settingsReasons.promptEn": "Question in English",
  "page.settingsReasons.promptHint": "Stands above the comment box in the portal and says what the answer is for. Empty means the standard wording.",
  "page.settingsReasons.photoHeading": "Photos",
  "page.settingsReasons.photoMax": "Largest photo (MB)",
  "page.settingsReasons.photoMaxHint": "Between {min} and {max} MB. Phone photos are commonly 3 to 8 MB.",
  "page.settingsReasons.error.photoLimit": "The photo size must be a whole number of megabytes within the allowed range.",
  "page.settingsReasons.error.noneActive": "At least one reason has to stay visible — without one, nobody can file a return.",
  "page.settingsReasons.error.unknownHandle": "One of the reasons is not in your catalogue any more. Reload the page.",
  "page.settingsShipping.title": "Shipping & carrier access",
  "page.settingsShipping.hubHint": "Return methods with their fees — and the DHL credentials the labels are bought with.",
  "page.settingsShipping.saved": "Saved.",
  "page.settingsShipping.methodsHeading": "Return methods",
  "page.settingsShipping.methodsHint": "Shown in the portal at step 4. A method that is switched off disappears; one that fits no solution is never offered.",
  "page.settingsShipping.methodsEmpty": "No return route is set up for this shop yet. Without one, nobody can register a return in the portal — get in touch with us.",
  "page.settingsShipping.methodActive": "Offer in the portal",
  "page.settingsShipping.methodOn": "in the portal",
  "page.settingsShipping.methodOff": "not in the portal",
  "page.settingsShipping.methodPosition": "Order",
  "page.settingsShipping.methodPositionHint": "Lower numbers come first in the portal. The first option is the one most customers pick.",
  "page.settingsShipping.methodFeeMoved": "The label fee and its exceptions live in the",
  "page.settingsShipping.uncovered": "No active return method is offered for “{outcome}” — a customer who chooses only that gets stuck at the shipping step in the portal. Tick it on at least one method.",
  "page.settingsShipping.methodOutcomes": "Offered for",
  "page.settingsShipping.methodExchangeLabelHint": "For an exchange-only return this label is offered only when no label fee applies to it (fee off, 0, or waived for the reason) — otherwise there would be no refund to deduct it from. If the return also contains a refund or store credit, the label stays available. Unticking “Exchange” here means: a pure exchange never gets this label, whatever the reason; a return that also carries a refund or store credit still does.",
  "page.settingsShipping.carrierHeading": "DHL access",
  "page.settingsShipping.carrierHint": "Your own DHL contract. retuno buys return labels with it; nothing goes through an account of ours.",
  "page.settingsShipping.carrierMissing": "No credentials stored. Without them the portal cannot offer a label from you.",
  "page.settingsShipping.carrierStored": "Stored on {date}, environment {environment}.",
  "page.settingsShipping.carrierNotStored": "not stored",
  "page.settingsShipping.carrierReplaceHint": "Stored secrets are never shown again — not even shortened. To change anything, enter the whole set once more.",
  "page.settingsShipping.environment": "Environment",
  "page.settingsShipping.environment.sandbox": "Sandbox",
  "page.settingsShipping.environment.production": "Production",
  "page.settingsShipping.clientId": "Client ID",
  "page.settingsShipping.clientSecret": "Client secret",
  "page.settingsShipping.username": "User name",
  "page.settingsShipping.password": "Password",
  "page.settingsShipping.receiverId": "Return receiver:",
  "page.settingsShipping.receiverIdLabel": "Return receiver ID",
  "page.settingsShipping.receiverIdHint": "DHL's identifier for your return address — from your Retoure contract. It applies to returns from Germany, as long as the route for Germany has no DHL returns recipient of its own. For every other country you enter the DHL returns recipient on that country's route.",
  "page.settingsShipping.billingNumber": "Billing number",
  "page.settingsShipping.billingNumberHint": "Optional. Leave empty to keep a stored number.",
  "page.settingsShipping.billingClear": "Remove billing number",
  "page.settingsShipping.billingStored": "A billing number is stored.",
  "page.settingsShipping.billingMissing": "No billing number stored.",
  "page.settingsShipping.saveCarrier": "Store credentials",
  "page.settingsShipping.sendBack.title": "Return shipments to customers (DHL Paket)",
  "page.settingsShipping.sendBack.summaryReady": "Set up",
  "page.settingsShipping.sendBack.summaryMissing": "Not set up yet",
  "page.settingsShipping.sendBack.intro": "For items you do not accept and send back: every Friday retuno buys one DHL label per return from your warehouse to the customer and attaches all labels as one document to the Friday list.",
  "page.settingsShipping.sendBack.needsCarrier": "Store the DHL access above first. The billing numbers belong to that access.",
  "page.settingsShipping.sendBack.sandbox": "The DHL access is set to sandbox: the labels are test labels and cannot be used for shipping.",
  "page.settingsShipping.sendBack.name1": "Sender (name or company)",
  "page.settingsShipping.sendBack.name2": "Sender, second line (optional)",
  "page.settingsShipping.sendBack.street": "Street",
  "page.settingsShipping.sendBack.house": "House number",
  "page.settingsShipping.sendBack.postalCode": "Postal code",
  "page.settingsShipping.sendBack.city": "City",
  "page.settingsShipping.sendBack.weight": "Weight per parcel (kg)",
  "page.settingsShipping.sendBack.weightHint": "DHL requires a weight per parcel. The sender is in Germany.",
  "page.settingsShipping.sendBack.billingDomestic": "Billing number DHL Paket (Germany)",
  "page.settingsShipping.sendBack.billingDomesticHint": "14 characters, positions 11 and 12 are 01.",
  "page.settingsShipping.sendBack.billingInternational": "Billing number DHL Paket International (abroad)",
  "page.settingsShipping.sendBack.billingInternationalHint": "14 characters, positions 11 and 12 are 53. Without it there is no label abroad.",
  "page.settingsShipping.sendBack.billingStored": "A billing number is stored. Leave empty to keep it.",
  "page.settingsShipping.sendBack.billingClear": "Remove billing number",
  "page.settingsShipping.sendBack.save": "Save return shipments",
  "page.settingsShipping.sendBack.problem.required": "Please fill in.",
  "page.settingsShipping.sendBack.problem.tooLong": "Too long for the DHL label.",
  "page.settingsShipping.sendBack.problem.postalCode": "Five digits, the sender is in Germany.",
  "page.settingsShipping.sendBack.problem.weight": "A weight between 0.001 and 31.5 kg.",
  "page.settingsShipping.error.sendBackInvalid": "Return shipments are not saved. Please check the fields with a note.",
  "page.settingsShipping.error.sendBackBillingDomestic": "The billing number for DHL Paket is not saved: it has 14 characters, positions 11 and 12 are 01.",
  "page.settingsShipping.error.sendBackBillingInternational": "The billing number for DHL Paket International is not saved: it has 14 characters, positions 11 and 12 are 53.",
  "page.settingsShipping.error.sendBackNoCarrier": "Nothing saved: billing numbers can only be stored once the DHL access is stored.",
  "page.settingsShipping.verify": "Test the connection",
  "page.settingsShipping.verifyOk": "{carrier} accepted the credentials. No label was created.",
  "page.settingsShipping.verifyFailed": "{carrier} rejected the credentials (HTTP {status}). Check the values and the environment.",
  "page.settingsShipping.forget": "Remove credentials",
  "page.settingsShipping.forgetConfirm": "Yes, remove the DHL credentials — the billing numbers for sending items back to customers are deleted too.",
  "page.settingsShipping.error.noneActive": "At least one return method has to stay switched on — without one, nobody can finish a return.",
  "page.settingsShipping.error.noOutcome": "A method that is switched on but offered for no solution never appears in the portal. Pick at least one.",
  "page.settingsShipping.routesListHeading": "Shipping routes by country",
  "page.settingsShipping.routesListHint": "Where a customer returns from decides who carries it: a customer in Austria does not get a German domestic label. The country is the customer's, not yours.",
  "page.settingsShipping.routesEmpty": "No routes yet. As long as this is empty, no order gets a label.",
  "page.settingsShipping.routesNone": "There is deliberately no default route: a country without one gets no label, and the return says which country is missing. Better no label than the wrong one.",
  "page.settingsShipping.routeAdd": "Add a country",
  "page.settingsShipping.routeNew": "New country",
  "page.settingsShipping.routeCountry": "Customer's country",
  "page.settingsShipping.routeCountryHint": "Two letters, ISO 3166 — DE, AT, CH.",
  "page.settingsShipping.routeCarrier": "Carrier",
  "page.settingsShipping.routeProduct": "Sendcloud shipping product",
  "page.settingsShipping.routeProductHint": "Sendcloud only, for example sendcloud:letterreturn. Which ones exist depends on the carriers active in your Sendcloud account.",
  "page.settingsShipping.routeDhlReceiver": "DHL returns recipient",
  "page.settingsShipping.routeDhlReceiverHint": "DHL only. DHL's identifier for returns from this country, for example aut for Austria — you find it in your DHL business customer portal. For Germany you may leave it empty; then the returns recipient identifier on the DHL access applies.",
  "page.settingsShipping.routeDhlBilling": "DHL billing number",
  "page.settingsShipping.routeDhlBillingHint": "Optional. It belongs to exactly this DHL returns recipient and is never sent with another one.",
  "page.settingsShipping.routeDhlBillingStored": "A billing number is stored — leave empty to keep it. If you change the DHL returns recipient, it no longer applies and must be entered again.",
  "page.settingsShipping.routeDhlBillingClear": "Remove billing number",
  "page.settingsShipping.routeDhlBillingDropped": "For {countries} the DHL billing number was removed because the DHL returns recipient changed — it belonged to the old one. Please enter the number for the new DHL returns recipient; until then this country goes to DHL without a billing number.",
  "page.settingsShipping.sendcloudMissing": "No credentials stored. Without them no country can go through Sendcloud.",
  "page.settingsShipping.publicKey": "Public key",
  "page.settingsShipping.secretKey": "Secret key",
  "page.settingsShipping.senderAddressId": "Return address:",
  "page.settingsShipping.senderAddressIdLabel": "Return address ID",
  "page.settingsShipping.senderAddressIdHint": "The sender address from your Sendcloud account — that is where your customers return to. The test button shows you the IDs.",
  "page.settingsShipping.weightGrams": "Default weight in grams",
  "page.settingsShipping.weightGramsHint": "Sendcloud requires a weight for every parcel, and we do not know it. 1 to 31500.",
  "page.settingsShipping.weightStored": "Default weight: {grams} g.",
  "page.settingsShipping.sendcloudAddresses": "Sendcloud knows these return addresses for your access:",
  "page.settingsShipping.error.sendcloudIncomplete": "Something is missing for Sendcloud: both keys and the return address ID belong together.",
  "page.settingsShipping.error.sendcloudWeight": "The default weight must be a number between 1 and 31500 grams.",
  "page.settingsShipping.error.routeCountry": "A country must be exactly two letters — DE, AT, CH.",
  "page.settingsShipping.error.routeCarrier": "Unknown carrier.",
  "page.settingsShipping.error.routeProduct": "The Sendcloud shipping product is missing — without it Sendcloud does not know what to ship with.",
  "page.settingsShipping.error.routeDuplicate": "A country appears twice. Each country can have only one route.",
  "page.settingsShipping.error.routeDhlReceiver": "A DHL returns recipient or DHL billing number contains spaces or is longer than 50 characters.",
  "page.settingsShipping.error.routeDhlBillingWithoutReceiver": "A DHL billing number has no DHL returns recipient — it always belongs to exactly one.",
  "page.settingsShipping.error.carrierIncomplete": "Credentials go in as a whole set: client ID, client secret, user name, password and receiver ID.",
  "page.settingsShipping.error.carrierForgetUnconfirmed": "Tick the box to remove. Nothing was changed.",
  "page.settingsPolicy.title": "Return policy",
  "page.settingsPolicy.hubHint": "Deadlines, label fees per country, discount recalculation, exchange handling and approval.",
  "page.settingsPolicy.save": "Save as a new version",
  "page.settingsPolicy.saved": "Saved as version {version}. It applies to every evaluation from now on; earlier ones keep the version they were calculated with.",
  "page.settingsPolicy.activeVersion": "Version {version} “{name}” is in force, saved {date}.",
  "page.settingsPolicy.noVersionYet": "No version saved yet. What you see below is the safe default — it only becomes a rule set once you save it.",
  "page.settingsPolicy.activeMarker": "in force",
  "page.settingsPolicy.basicsHeading": "Basics",
  "page.settingsPolicy.name": "Name of this rule set",
  "page.settingsPolicy.nameHint": "Appears on every evaluation, so you can tell which rules produced an amount.",
  "page.settingsPolicy.currency": "Currency",
  "page.settingsPolicy.currencyHint": "Three letters, for example EUR.",
  "page.settingsPolicy.windowHeading": "Return window",
  "page.settingsPolicy.windowHint": "The clock starts at delivery, not at the order. Where no delivery event exists, the steps below decide — and every step is visible on the return.",
  "page.settingsPolicy.windowDays": "Days",
  "page.settingsPolicy.windowGraceDays": "Days from dispatch to assumed delivery",
  "page.settingsPolicy.windowGraceHint": "Used when the carrier reports no delivery. The assumption is written into the record as one.",
  "page.settingsPolicy.windowOrderFallback": "Fall back to the order date if nothing else is known",
  "page.settingsPolicy.windowMeasuredAt": "Measured against",
  "page.settingsPolicy.measuredAt.registered": "The day the customer filed the return",
  "page.settingsPolicy.measuredAt.evaluation": "The day you evaluate it",
  "page.settingsPolicy.windowOnExpired": "When the window has passed",
  "page.settingsPolicy.onExpired.clarify": "Put it in front of a human",
  "page.settingsPolicy.onExpired.allow": "Note it and carry on — the deadline stops nothing",
  "page.settingsPolicy.defectHeading": "Period for a defect",
  "page.settingsPolicy.defectHint": "For a defect, the period depends on the solution the customer wants. Refund: within the return window above or the extension from the allow list, not the one for loyal customers. Store credit or a replacement – the same model, any size or colour – until as many months after the purchase as you enter here. Another model follows the return window, as does an item marked “Not a defect”.",
  "page.settingsPolicy.defectMonths": "Months for store credit or replacement",
  "page.settingsPolicy.defectMonthsHint": "Counted from the purchase; the last day still counts. Leave empty: off – then a defect has the return window like any other reason.",
  "page.settingsPolicy.defectLoyalExtraMonths": "Extra months for loyal customers",
  "page.settingsPolicy.defectLoyalExtraMonthsHint": "Applies to customers above your loyalty threshold (Block and allow lists, loyalty rule). 0 means: no extension.",
  "page.settingsPolicy.defectReasonsSentence": "The return reason “{names}” counts as a defect.",
  "page.settingsPolicy.labelFeeHeading": "Label fee",
  "page.settingsPolicy.labelFeeEnabled": "Deduct a fee for your return label",
  "page.settingsPolicy.labelFeeAmount": "Default amount",
  "page.settingsPolicy.amountHint": "Decimal with a dot, for example 4.99.",
  "page.settingsPolicy.labelFeeAssume": "Assume the customer used your label",
  "page.settingsPolicy.labelFeeAssumeHint": "Leave this off while labels come from elsewhere: without proof, nothing is deducted, and the assumption is recorded either way.",
  "page.settingsPolicy.labelFeeOnlyWhenCovered": "Offer your label in the portal only when the refund covers the fee",
  "page.settingsPolicy.labelFeeOnlyWhenCoveredHint": "On: if a return's refund does not cover the label fee, the customer portal offers no return label — the customer ships it themselves. Off: the label is offered anyway; only as much of the fee is deducted as the refund allows, and you carry the rest.",
  "page.settingsPolicy.labelFeeOnSiteAlways": "Also offer “Check on site” when the refund does not cover the fee",
  "page.settingsPolicy.labelFeeOnSiteAlwaysHint": "Off: the review offers “Check on site” only when the refund covers the label fee — otherwise the fee could not be charged later. On: always.",
  "page.settingsPolicy.byCountryHeading": "Amount per country",
  "page.settingsPolicy.country": "Country {position}",
  "page.settingsPolicy.countryHint": "Two letters, for example DE.",
  "page.settingsPolicy.countryAmount": "Amount {position}",
  "page.settingsPolicy.countriesEmpty": "No country has its own amount. The default above applies everywhere.",
  "page.settingsPolicy.countryAdd": "Add a country",
  "page.settingsPolicy.countryNew": "New country",
  "page.settingsPolicy.waivedHeading": "No fee for these reasons",
  "page.settingsPolicy.waivedHint": "One item with such a reason waives the fee for the whole parcel — the customer did not cause it.",
  "page.settingsPolicy.waivedEmpty": "No reasons curated yet. Pick them under Return reasons first.",
  "page.settingsPolicy.instantLabelHeading": "Return label at sign-up",
  "page.settingsPolicy.instantLabelHint": "By default the label is only created once you approve a return. With this setting the customer gets it the moment they register the return in the portal, so they can drop off their parcel right away. Applies only to return methods where you provide the label.",
  "page.settingsPolicy.instantLabelEnabled": "Create the label as soon as the return is registered",
  "page.settingsPolicy.instantLabelClarifyHeading": "Review these reasons first",
  "page.settingsPolicy.instantLabelClarifyHint": "No label is created for these return reasons. The return comes to you as a case to review instead, with a note in its history. Reasons where you require a photo are pre-selected — the choice is yours.",
  "page.settingsPolicy.discountsHeading": "Discounts",
  "page.settingsPolicy.discountsHint": "How a discount is recalculated on the quantity the customer actually keeps. Two of three kept at a three-for-two price is no longer three for two.",
  "page.settingsPolicy.eligibility": "Which lines take part",
  "page.settingsPolicy.eligibility.discountedLines": "Only lines that carry a discount",
  "page.settingsPolicy.eligibility.allLines": "Every line of the order",
  "page.settingsPolicy.unknownCode": "A code you have not listed",
  "page.settingsPolicy.unknownCode.note": "Note it in the record",
  "page.settingsPolicy.unknownCode.clarify": "Put it in front of a human",
  "page.settingsPolicy.code": "Discount code",
  "page.settingsPolicy.codeHint": "Leave empty to drop this slot. Case does not matter.",
  "page.settingsPolicy.codesHeading.one": "{count} discount code",
  "page.settingsPolicy.codesHeading.other": "{count} discount codes",
  "page.settingsPolicy.codesEmpty": "No code stored yet. Without one, retuno falls back to the basic rule below.",
  "page.settingsPolicy.codeAdd": "Add a discount code",
  "page.settingsPolicy.codeNew": "New discount code",
  "page.settingsPolicy.fallbackHeading": "Every other code",
  "page.settingsPolicy.fallbackHint": "Applies to codes that are not listed above — newsletter vouchers and the like.",
  "page.settingsPolicy.strategyLabel": "How to recalculate",
  "page.settingsPolicy.strategy.proportional": "Keep the historical unit price",
  "page.settingsPolicy.strategy.quantityTiers": "Quantity tiers",
  "page.settingsPolicy.strategy.xForY": "X for Y",
  "page.settingsPolicy.groupSize": "Items per group",
  "page.settingsPolicy.paidPerGroup": "Paid items per group",
  "page.settingsPolicy.onlyForXForY": "Only used for “X for Y”.",
  "page.settingsPolicy.tierQuantity": "Tier {tier}: from how many items",
  "page.settingsPolicy.tierPercent": "Tier {tier}: percent",
  "page.settingsPolicy.onlyForTiers": "Only used for “Quantity tiers”.",
  "page.settingsPolicy.keepStoreCredit": "With store credit, the item counts as kept — the quantity discount on the kept items stays.",
  "page.settingsPolicy.keepStoreCreditHint": "The paid price of the returned item is credited, with the bonus on top. Used for every discount type except “Keep the historical unit price”.",
  "page.settingsPolicy.settlementHeading": "Exchanges",
  "page.settingsPolicy.exchangeLines": "A return that contains an exchange",
  "page.settingsPolicy.exchangeLines.note": "Note it in the record",
  "page.settingsPolicy.exchangeLines.clarify": "Put it in front of a human",
  "page.settingsPolicy.approvalHeading": "Approval",
  "page.settingsPolicy.approvalSentence": "The refund is triggered when the return is completed at the intake desk. Where that is not possible, a team member releases it on the return page.",
  "page.settingsPolicy.noteHeading": "For the record",
  "page.settingsPolicy.note": "What did you change?",
  "page.settingsPolicy.noteHint": "Optional. The sentence shows up in the list of versions later and tells you why you changed something.",
  "page.settingsPolicy.historyHeading": "Earlier versions",
  "page.settingsPolicy.historyHint": "Every change is stored as a new version; nothing is ever overwritten. An evaluation that already ran therefore keeps the version it was calculated with. You can restore any earlier version — it is then adopted as a new version. Blocks, exceptions and exchange stay as they are currently set.",
  "page.settingsPolicy.historyShown": "Showing the {shown} most recent of {total} versions.",
  "page.settingsPolicy.historyShowAll": "Show older",
  "page.settingsPolicy.restore": "Restore",
  "page.settingsPolicy.restoredFrom": "Restored version v{version}",
  "page.settingsPolicy.column.version": "Version",
  "page.settingsPolicy.column.name": "Name",
  "page.settingsPolicy.column.when": "Saved",
  "page.settingsPolicy.column.note": "Note",
  "page.settingsPolicy.column.restore": "Restore",
  "page.settingsPolicy.error.schema": "“{path}” does not fit the expected form. Check the field and try again.",
  "page.settingsPolicy.error.xForYPaysAll": "In “{path}” every item of the group is paid for — then nothing is free. The paid count has to be lower than the group size.",
  "page.settingsPolicy.error.duplicateTier": "Two tiers in “{path}” start at the same quantity. Which one applies would depend on their order.",
  "page.settingsPolicy.error.duplicateCode": "The same discount code is listed twice ({path}). Only the first one would ever apply.",
  "page.settingsPolicy.error.invalidAmount": "“{path}” is not an amount. Use a decimal with a dot, for example 4.99.",
  "page.settingsPolicy.error.unknownReasonHandle": "“{path}” names a return reason that does not exist in your shop. An exception for a reason nobody can pick never applies — choose the reason from the list below.",
  "page.settingsPolicy.storeCreditHeading": "Store credit",
  "page.settingsPolicy.bonusPercent": "Bonus in percent",
  "page.settingsPolicy.bonusHint": "Added on top when the customer chooses store credit. The portal shows the resulting amount next to the plain refund. 0 means no bonus.",
  "rules.trace.refund.bonus_offset": "Store credit bonus already granted on this order is offset: {refund} minus {bonus} = {amount}.",
  "rules.trace.refund.bonus_unsettled": "{rest} of the granted store credit bonus did not fit into this refund and stays with the customer.",
  "rules.trace.refund.bonus_unsettledAsCredit": "{rest} of the granted store credit bonus did not fit into this store credit and stays with the customer.",
  "rules.trace.refund.store_credit_bonus": "Store credit bonus: {percent} % on {base} — {bonus} on top.",
  "rules.trace.refund.store_credit_goodwill": "Goodwill store credit ({goodwill}): no bonus.",
  "rules.warning.taxes_excluded": "Prices on this order exclude tax: the calculation used net prices, the customer paid gross. The tax share is not part of the refund.",
  "rules.warning.taxes_excludedAsCredit": "Prices on this order exclude tax: the calculation used net prices, the customer paid gross. The tax share is not part of the store credit.",
  "rules.warning.presentment_currency_differs": "The customer paid in {presentment}; the amounts here are in {shop}. Shopify expects the refund in the customer's currency — check before booking.",
  "rules.warning.presentment_currency_differsAsCredit": "The customer paid in {presentment}; the amounts here are in {shop}. Shopify expects the store credit in the customer's currency — check before booking.",
  "rules.warning.refunded_total_disagrees": "Shopify reports two different figures for the same refund: the individual refunds add up to {refunds}, the order balance says {saldo}. The calculation used the individual refunds — they measure the money that actually went back.",
  "rules.warning.refunded_total_disagreesAsCredit": "Shopify reports two different figures for the same store credit: the individual credits add up to {refunds}, the order balance says {saldo}. The calculation used the individual credits — they measure the money that actually went to store credit.",
  "rules.warning.refunded_total_uncertain": "The list of refunds could not be read in full ({refunds} counted, order balance {saldo}). The calculation used the larger figure so that no money is paid out twice — the amount may therefore be too low.",
  "rules.warning.refunded_total_uncertainAsCredit": "The list of store credits could not be read in full ({refunds} counted, order balance {saldo}). The calculation used the larger figure so that no money is credited twice — the amount may therefore be too low.",
  "rules.warning.store_credit_bonus_unsettled": "A granted store credit bonus of {rest} could not be offset against this refund — it stays on the customer's store credit account.",
  "rules.warning.store_credit_bonus_unsettledAsCredit": "A granted store credit bonus of {rest} could not be offset against this store credit — it stays on the customer's store credit account.",
  "rules.warning.store_credit_bonus_applied": "A store credit bonus of {percent} % applied: {bonus} on top of the refundable amount.",
  "rules.warning.store_credit_bonus_appliedAsCredit": "A store credit bonus of {percent} % applied: {bonus} on top of the value of the return.",
  "rules.warning.label_waiver_never_matches.one": "The label fee is meant to be waived for one reason ({reasons}) — that reason does not exist in your shop, so the exception can never apply.",
  "rules.warning.label_waiver_never_matches.other": "The label fee is meant to be waived for {count} reasons ({reasons}) — none of them exists in your shop, so the exception can never apply.",
  "portal.outcome.storeCreditBonus": "Credited to your customer account — with {percent} % on top.",
  "portal.footer.support": "Questions?",
  "portal.footer.withdrawal": "This return goes through our own returns policy. Your statutory right of withdrawal is unaffected — if you want to withdraw from the contract, please tell us directly.",
  "portal.footer.policy": "Return policy",
  "portal.footer.imprint": "Imprint",
  "portal.footer.privacy": "Privacy",
  "page.shop.unavailable": "Connecting a shop is not possible right now. We have been notified.",
  "page.shop.domainIntro": "Enter your myshopify.com domain. We prepare the connection and send you the link — connecting is a single click.",
  "page.shop.domainLabel": "Shop domain",
  "page.shop.domainHint": "Example: my-shop.myshopify.com",
  "page.shop.domainSubmit": "Continue",
  "page.shop.roleMayNotConnect": "This role may not connect a shop.",
  "page.shop.status.prepared": "We are preparing the connection. You will get the link as soon as it is ready.",
  "page.shop.status.link_ready": "The connection is ready. One click, then Shopify.",
  "page.shop.status.connected": "Connected. Your returns arrive at retuno automatically.",
  "page.shop.status.disconnected": "Disconnected — the app was uninstalled in your shop. A new link restores the connection.",
  "page.shop.status.error": "Something went wrong while connecting. We have been notified and are on it.",
  "page.shop.installLinkOpen": "Connect shop at Shopify",
  "page.shop.waitingForLink": "Nothing for you to do right now — we will let you know as soon as the link is ready.",
  "page.shop.toReturns": "View returns",
  "page.shop.connectedSince": "Connected since {date}. Your returns arrive at retuno automatically.",
  "page.shop.error.notConfigured": "The Shopify connection app is not configured on this server.",
  "page.shop.error.invalidDomain": "That is not a valid myshopify.com domain.",
  "page.shop.error.unknownShop": "No shop is prepared for this domain.",
  "page.shop.error.invalidHmac": "The signature of the request does not match.",
  "page.shop.error.invalidState": "The connection attempt is unknown, already used or expired. Please start again.",
  "page.shop.error.tokenExchangeFailed": "Shopify did not hand out an access token. Please try again.",
  "page.shop.error.domainTaken": "This domain is already connected to a different retuno account. Please contact support if it is yours.",
  "page.shop.error.appConflict": "This domain is bound to a different connection app than the one configured here. Registering it again would move the shop across — so nothing was changed.",
  "page.returns.title": "Returns",
  "page.returns.heading": "Returns",
  "page.returns.empty": "No return has arrived yet. As soon as a return is requested in the shop, it appears here within seconds.",
  "page.returns.emptyNoShop": "No shop is connected yet. Connect a shop first — returns arrive by webhook.",
  "page.returns.tableCaption": "Returns of this shop",
  "page.returns.column.name": "Return",
  "page.returns.column.order": "Order",
  "page.returns.column.status": "Status",
  "page.returns.column.type": "Type",
  "page.returns.column.quantity": "Items",
  "page.returns.column.requested": "Requested",
  "page.returns.jobsHeading": "The machinery behind it",
  "page.returns.jobsHealthy": "All running. Nothing is stuck.",
  "page.returns.jobsStuck.one": "{count} job is stuck. We can see this from our side too — get in touch if it is holding you up.",
  "page.returns.jobsStuck.other": "{count} jobs are stuck. We can see this from our side too — get in touch if it is holding you up.",
  "page.returns.jobsDetails": "Technical detail",
  "page.returns.jobsCaption": "Jobs needing attention",
  "page.returns.jobAnswered": "Answered: a later run on {at} went through.",
  "page.returns.column.job": "Job",
  "page.returns.column.jobStatus": "Status",
  "page.returns.column.jobDetail": "Detail",
  "page.returns.column.attempts": "Attempts",
  "page.returns.column.jobReturn": "Return",
  "page.returnDetail.title": "Return",
  "page.returnDetail.notFound": "This return does not exist in this shop.",
  "page.returnDetail.backToList": "Back to returns",
  "page.returnDetail.shopifyId": "Shopify ID",
  "page.returnDetail.shopifyOrderId": "Shopify order ID",
  "page.returnDetail.orderId": "Order",
  "page.returnDetail.requestedAt": "Requested",
  "page.returnDetail.closedAt": "Closed",
  "page.returnDetail.declineReason": "Reason (Shopify)",
  "page.returnDetail.source": "First seen via",
  "page.returnDetail.lastSynced": "Last synced",
  "page.returnDetail.orderLink": "to the order",
  "page.returnDetail.linesHeading": "Line items",
  "page.returnDetail.linesCaption": "Line items of this return",
  "page.returnDetail.column.title": "Item",
  "page.returnDetail.column.quantity": "Quantity",
  "page.returnDetail.column.reason": "Reason",
  "page.returnDetail.historyHeading": "Status history",
  "page.returnDetail.historyCaption": "Status changes of this return",
  "page.returnDetail.column.from": "From",
  "page.returnDetail.column.to": "To",
  "page.returnDetail.column.via": "Via",
  "page.returnDetail.column.when": "When",
  "page.returnDetail.outcomeHeading": "Shopify's suggested outcome",
  "page.returnDetail.outcomeNeverEvaluated": "Never evaluated. The comparison value is created by the evaluation: it fetches the value from Shopify and stores it next to the calculation it belongs to.",
  "page.returnDetail.outcomeFromEvaluation": "From the evaluation of {date}, rule version v{version}. What Shopify would have calculated — retuno's own calculation applies; the API returns the same number.",
  "page.returnDetail.usageHeading": "Billing events",
  "page.returnDetail.usageNone": "Not counted — this return is free.",
  "page.returnDetail.usageCaption": "Billing events of this return",
  "page.returnDetail.column.usageKind": "Event",
  "page.returnDetail.column.amount": "Amount",
  "page.returnDetail.column.trigger": "Trigger",
  "page.returnDetail.usageKind.processed_return": "Processed return",
  "page.returnDetail.usageKind.reversal": "Counter-entry",
  "page.error.notFound.title": "Page not found",
  "page.error.notFound.detail": "This page does not exist.",
  "page.error.unavailable.title": "Temporarily unavailable",
  "page.error.unavailable.detail": "This function is not ready right now. Please try again later.",
  "page.error.forbidden.title": "No access",
  "page.error.forbidden.detail": "You do not have permission for this action.",
  "page.error.badRequest.title": "Request not understood",
  "page.error.badRequest.detail": "This link is incomplete or no longer valid. Please start over from the dashboard.",
  "page.error.badRequest.detailPortal": "This link is incomplete or no longer valid. Please start again.",
  "page.error.unknown.title": "Something went wrong",
  "page.error.unknown.detail": "The operation was aborted. Check where things stand before trying again.",
  "page.error.code": "Error code {status}.",
  "page.error.requestId": "Request ID {id}",
  "page.error.requestIdHint": "Mention this number when you write to us.",
  "rules.trace.access.allowed": "This order is on your allow list (entry: {entry}) — the block list does not apply to it, and the return window is lifted or extended as you set it.",
  "rules.trace.access.blocked": "This order is on your block list (entry: {entry}).",
  "rules.trace.access.window_waived": "The return window ended {deadline} — the allow list overrides it.",
  "rules.trace.access.window_extended.one": "The return window ended {deadline} — the allow list extends it by {days} day to {extendedTo}.",
  "rules.trace.access.window_extended.other": "The return window ended {deadline} — the allow list extends it by {days} days to {extendedTo}.",
  "rules.trace.access.window_extension_passed.one": "The extension by {days} day has passed as well (until {extendedTo}).",
  "rules.trace.access.window_extension_passed.other": "The extension by {days} days has passed as well (until {extendedTo}).",
  "rules.trace.access.window_goodwill": "The return window ended {deadline} — the return was accepted as a goodwill gesture, so the window does not apply to it.",
  "rules.trace.access.loyalty_window_waived": "The return window ended {deadline} — the customer reaches your loyalty threshold, so the window is lifted.",
  "rules.trace.access.loyalty_window_extended.one": "The return window ended {deadline} — the customer reaches your loyalty threshold, so it is extended by {days} day to {extendedTo}.",
  "rules.trace.access.loyalty_window_extended.other": "The return window ended {deadline} — the customer reaches your loyalty threshold, so it is extended by {days} days to {extendedTo}.",
  "rules.trace.access.loyalty_extension_passed.one": "The extension by {days} day for loyal customers has passed as well (until {extendedTo}).",
  "rules.trace.access.loyalty_extension_passed.other": "The extension by {days} days for loyal customers has passed as well (until {extendedTo}).",
  "rules.trace.access.loyalty_not_reached": "The customer does not reach your loyalty threshold — the return window applies as usual.",
  "rules.trace.access.loyalty_no_account": "Loyalty threshold not checkable: the order has no customer account — the return window applies as usual.",
  "rules.trace.access.loyalty_currency": "Loyalty threshold not checkable: the customer's spend is in a different currency than your shop, and nothing is converted — the return window applies as usual.",
  "rules.trace.access.loyalty_unavailable": "Loyalty threshold not checkable: the customer's spend could not be read — the return window applies as usual.",
  "rules.trace.access.desk_decided": "Entered at the desk — a product tag normally excludes this settlement; here your team decided (affected: {count}).",
  "rules.trace.access.conditions_accepted": "Hygiene items: the customer accepted the return conditions in the portal — so the “Not returnable at all” list does not hold this settlement (affected: {count}).",
  "rules.trace.window.base.delivery_event": "Return window starts with the carrier delivery on {date}.",
  "rules.trace.window.base.shipment_grace.one": "No delivery event. Assumed delivery: shipped {shipped} plus {graceDays} day = {date}.",
  "rules.trace.window.base.shipment_grace.other": "No delivery event. Assumed delivery: shipped {shipped} plus {graceDays} days = {date}.",
  "rules.trace.window.base.order_date": "Neither delivery nor shipping date. Falling back to the order date {date}.",
  "rules.trace.window.base.missing": "No basis for the return window — nothing is assumed.",
  "rules.trace.window.deadline.one": "Window: {days} day, ends {deadline}. Measured on {measuredOn} ({measuredAt}).",
  "rules.trace.window.deadline.other": "Window: {days} days, ends {deadline}. Measured on {measuredOn} ({measuredAt}).",
  "rules.trace.window.within": "Within the window (until {deadline}).",
  "rules.trace.window.expired": "Window expired: {measuredOn} is after {deadline}.",
  "rules.trace.exchange.window.deadline.one": "Exchange right: {days} day, ends {deadline}. Measured on {measuredOn} ({measuredAt}).",
  "rules.trace.exchange.window.deadline.other": "Exchange right: {days} days, ends {deadline}. Measured on {measuredOn} ({measuredAt}).",
  "rules.trace.exchange.window.within": "Within the exchange right (until {deadline}).",
  "rules.trace.exchange.window.expired": "Exchange right exceeded: {measuredOn} is after {deadline}.",
  "rules.trace.defect.window.general": "The withdrawal period applies to {lines}.",
  "rules.trace.defect.window.refund": "Defect with refund ({lines}): refunds only within the withdrawal period, so until {deadline}.",
  "rules.trace.defect.window.refundAsPaidCredit": "Defect ({lines}): store credit is only given within the withdrawal period, so until {deadline}.",
  "rules.trace.defect.window.long.one": "Defect ({lines}): warranty of {months} month from the purchase on {purchased}, so until {deadline}.",
  "rules.trace.defect.window.long.other": "Defect ({lines}): warranty of {months} months from the purchase on {purchased}, so until {deadline}.",
  "rules.trace.defect.window.long_loyal.one": "Defect ({lines}): the customer reaches your loyalty threshold – warranty of {months} month from the purchase on {purchased}, so until {deadline}.",
  "rules.trace.defect.window.long_loyal.other": "Defect ({lines}): the customer reaches your loyalty threshold – warranty of {months} months from the purchase on {purchased}, so until {deadline}.",
  "rules.trace.defect.window.long_delivered.one": "Defect ({lines}): warranty of {months} month from delivery on {delivered}, so until {deadline}.",
  "rules.trace.defect.window.long_delivered.other": "Defect ({lines}): warranty of {months} months from delivery on {delivered}, so until {deadline}.",
  "rules.trace.defect.window.long_loyal_delivered.one": "Defect ({lines}): the customer reaches your loyalty threshold – warranty of {months} month from delivery on {delivered}, so until {deadline}.",
  "rules.trace.defect.window.long_loyal_delivered.other": "Defect ({lines}): the customer reaches your loyalty threshold – warranty of {months} months from delivery on {delivered}, so until {deadline}.",
  "rules.trace.discount.codes.none": "No discount code on the order.",
  "rules.trace.discount.codes.none_uncoded": "No discount code on the order — a discount is on it nonetheless.",
  "rules.trace.discount.codes.only_on_order": "Shopify's two sources disagree: noted on the order is {onOrder}, the applied discount is {applications}. The noted code decides the strategy.",
  "rules.trace.discount.codes.present.one": "Discount code on the order: {codes}.",
  "rules.trace.discount.codes.present.other": "Discount codes on the order: {codes}.",
  "rules.trace.discount.strategy.proportional": "Discount handling: regular discount — stays proportional, not recalculated. Matching code: {code}.",
  "rules.trace.discount.strategy.quantity_tiers": "Discount handling: quantity tiers ({tiers}) — recalculated on the quantity finally kept. Matching code: {code}.",
  "rules.trace.discount.strategy.x_for_y": "Discount handling: {paidPerGroup} paid per {groupSize} — recalculated on the items finally kept. Matching code: {code}.",
  "rules.trace.basis.order": "Basis: order {order}, total {total}.",
  "rules.trace.basis.exchange_target_excluded": "The exchange item {title} ({paid}) was only created at put-away — it replaces the exchanged unit and does not count as kept a second time.",
  "rules.trace.basis.prior_exchange_target_excluded": "The exchange item {title} ({paid}) comes from another, already processed return of this order — it was paid for with the value of the exchanged unit, so its price does not count as paid a second time.",
  "rules.trace.basis.replaced_exchange_excluded": "retuno replaced the exchange item {title} ({paid}) in Shopify with the changed exchange wish — it is still in the order total, but nobody keeps it, so it counts neither as kept nor as paid.",
  "rules.trace.basis.refunded_source": "Basis for “already refunded”: {source} — refunds total {refunds}, order balance {saldo}.",
  "rules.trace.basis.refunded_sourceAsCredit": "Basis for “already credited”: {source} — store credits total {refunds}, order balance {saldo}.",
  "rules.trace.basis.partially_refunded": "Basis: order {order} is partially refunded — {refunded} already refunded, {open} still open.",
  "rules.trace.basis.partially_refundedAsCredit": "Basis: order {order} is partially credited — {refunded} already credited as store credit, {open} still open.",
  "rules.trace.basis.capped_to_net_payment": "The basis would be {open}, but only {net} is paid and not refunded on the order (net payment) — capped to {net}.",
  "rules.trace.basis.capped_to_net_paymentAsCredit": "The basis would be {open}, but only {net} is paid and not credited on the order (net payment) — capped to {net}.",
  "rules.trace.basis.shipping_excluded": "The outbound shipping ({amount}) does not count towards this return's refund — whether it is refunded is set by the order shipping setting.",
  "rules.trace.basis.shipping_excludedAsCredit": "The outbound shipping ({amount}) does not count towards this return's store credit — whether it is credited is set by the order shipping setting.",
  "rules.trace.basis.withheld_before.label_fee": "Withheld on {return}: label fee {amount}.",
  "rules.trace.basis.withheld_before.pack": "Withheld on {return}: deduction for opened pairs {amount}.",
  "rules.trace.basis.withheld_before.bonus_offset": "Withheld on {return}: store credit bonus offset {amount}.",
  "rules.trace.basis.withheld_before_excluded": "Withheld money is not refunded later with this return: still open {open} minus {withheld} = {rest}.",
  "rules.trace.basis.withheld_before_excludedAsCredit": "Withheld money is not credited later with this return: still open {open} minus {withheld} = {rest}.",
  "rules.trace.basis.withheld_before_exceeds_open": "{withheld} was withheld on earlier returns, but only {open} is still open on the order — calculated with {rest}.",
  "rules.trace.basis.exchange_chain": "Exchange chain: order {order} originates from {original}; the original order carries the economics.",
  "rules.trace.basis.exchange_chain.added.one": "Exchange matching: {incoming} item, {matched} assigned ({byFallback} via title and price).",
  "rules.trace.basis.exchange_chain.added.other": "Exchange matching: {incoming} items, {matched} assigned ({byFallback} via title and price).",
  "rules.trace.kept.units.one": "Kept: {kept} of {total} item.",
  "rules.trace.kept.units.other": "Kept: {kept} of {total} items.",
  "rules.trace.kept.sibling_returned.one": "{count} item of {title} came back via {returns} and does not count as kept here.",
  "rules.trace.kept.sibling_returned.other": "{count} items of {title} came back via {returns} and do not count as kept here.",
  "rules.trace.kept.sibling_unpaid.one": "{count} item of {title} came back via {returns} and was not refunded there — this return pays nothing for it ({amount}).",
  "rules.trace.kept.sibling_unpaidAsCredit.one": "{count} item of {title} came back via {returns} and was not credited there — this return credits nothing for it ({amount}).",
  "rules.trace.kept.sibling_unpaid.other": "{count} items of {title} came back via {returns} and were not refunded there — this return pays nothing for them ({amount}).",
  "rules.trace.kept.sibling_unpaidAsCredit.other": "{count} items of {title} came back via {returns} and were not credited there — this return credits nothing for them ({amount}).",
  "rules.trace.kept.store_credit_kept.one": "Store credit counts as kept (shop setting): {units} store-credit item keeps the tier, and its paid value {paid} is credited.",
  "rules.trace.kept.store_credit_kept.other": "Store credit counts as kept (shop setting): {units} store-credit items keep the tier, and their paid value {paid} is credited.",
  "rules.trace.kept.store_credit_released.one": "Store credit no longer counts as kept: nothing is kept after this return, so the tier is gone and the {units} store-credit item is credited at its paid value.",
  "rules.trace.kept.store_credit_released.other": "Store credit no longer counts as kept: nothing is kept after this return, so the tier is gone and the {units} store-credit items are credited at their paid value.",
  "rules.trace.kept.priced.proportional.one": "Kept items keep their historical unit price: {units} item, {cost}.",
  "rules.trace.kept.priced.proportional.other": "Kept items keep their historical unit price: {units} items, {cost}.",
  "rules.trace.kept.priced.quantity_tiers.one": "Kept quantity recalculated: {units} discounted item reaches {percent}% — {cost}.",
  "rules.trace.kept.priced.quantity_tiers.other": "Kept quantity recalculated: {units} discounted items reach {percent}% — {cost}.",
  "rules.trace.kept.priced.x_for_y.one": "Kept items recalculated: {units} item, {free} of them free — {cost}.",
  "rules.trace.kept.priced.x_for_y.other": "Kept items recalculated: {units} items, {free} of them free — {cost}.",
  "rules.trace.kept.priced.unchanged.one": "No recalculation — no item left the basket (exchanges and store credit counted as kept included): {units} item keeps its paid price, {cost}.",
  "rules.trace.kept.priced.unchanged.other": "No recalculation — no item left the basket (exchanges and store credit counted as kept included): {units} items keep their paid price, {cost}.",
  "rules.trace.kept.exchange_pair_once": "{title} ({paid}) belongs to an exchange from an earlier return of this order — the exchanged item and its replacement are one piece: it counts once for the tier, and this item keeps its paid price.",
  "rules.trace.kept.total": "The kept items cost {cost}.",
  "rules.trace.refund.returned_units.one": "Returned: {returned} item, {matched} matched to an order line.",
  "rules.trace.refund.returned_units.other": "Returned: {returned} items, {matched} matched to an order line.",
  "rules.trace.refund.own_processed_zero.one": "{count} × {title} was already closed with this return without a refund ({amount}). Shopify therefore no longer lists it on the order — nothing to do here.",
  "rules.trace.refund.own_processed_zeroAsCredit.one": "{count} × {title} was already closed with this return without a store credit ({amount}). Shopify therefore no longer lists it on the order — nothing to do here.",
  "rules.trace.refund.own_processed_zero.other": "{count} × {title} were already closed with this return without a refund ({amount}). Shopify therefore no longer lists them on the order — nothing to do here.",
  "rules.trace.refund.own_processed_zeroAsCredit.other": "{count} × {title} were already closed with this return without a store credit ({amount}). Shopify therefore no longer lists them on the order — nothing to do here.",
  "rules.trace.refund.shopify_processed_zero.one": "{count} × {title} was closed with this return in Shopify without a refund ({amount}), not through retuno.",
  "rules.trace.refund.shopify_processed_zeroAsCredit.one": "{count} × {title} was closed with this return in Shopify without a store credit ({amount}), not through retuno.",
  "rules.trace.refund.shopify_processed_zero.other": "{count} × {title} were closed with this return in Shopify without a refund ({amount}), not through retuno.",
  "rules.trace.refund.shopify_processed_zeroAsCredit.other": "{count} × {title} were closed with this return in Shopify without a store credit ({amount}), not through retuno.",
  "rules.trace.refund.matched_by_sku.one": "1 of them matched by SKU — Shopify names no order line for it.",
  "rules.trace.refund.matched_by_sku.other": "{count} of them matched by SKU — Shopify names no order line for them.",
  "rules.trace.refund.already_refunded.one": "{units} item of this return is already refunded and is not counted as returned again.",
  "rules.trace.refund.already_refundedAsCredit.one": "{units} item of this return is already credited and is not counted as returned again.",
  "rules.trace.refund.already_refunded.other": "{units} items of this return are already refunded and are not counted as returned again.",
  "rules.trace.refund.already_refundedAsCredit.other": "{units} items of this return are already credited and are not counted as returned again.",
  "rules.trace.intake.counted.one": "Goods-in check: {counted} item received, {damaged} damaged, {missing} missing.",
  "rules.trace.intake.counted.other": "Goods-in check: {counted} items received, {damaged} damaged, {missing} missing.",
  "rules.trace.intake.damaged.one": "{damaged} item arrived damaged — refunded, its condition is decided at put-away.",
  "rules.trace.intake.damagedAsCredit.one": "{damaged} item arrived damaged — credited, its condition is decided at put-away.",
  "rules.trace.intake.damaged.other": "{damaged} items arrived damaged — refunded, their condition is decided at put-away.",
  "rules.trace.intake.damagedAsCredit.other": "{damaged} items arrived damaged — credited, their condition is decided at put-away.",
  "rules.trace.intake.defective.one": "{count} item is defective (defect confirmed) — it does not go back into stock.",
  "rules.trace.intake.defective.other": "{count} items are defective (defect confirmed) — they do not go back into stock.",
  "rules.trace.intake.missing.one": "{missing} announced item never arrived — not refunded.",
  "rules.trace.intake.missingAsCredit.one": "{missing} announced item never arrived — not credited.",
  "rules.trace.intake.missing.other": "{missing} announced items never arrived — not refunded.",
  "rules.trace.intake.missingAsCredit.other": "{missing} announced items never arrived — not credited.",
  "rules.trace.intake.rejected.one": "{rejected} item was not accepted — it stays with the customer and is neither refunded nor exchanged.",
  "rules.trace.intake.rejectedAsCredit.one": "{rejected} item was not accepted — it stays with the customer and is neither credited nor exchanged.",
  "rules.trace.intake.rejected.other": "{rejected} items were not accepted — they stay with the customer and are neither refunded nor exchanged.",
  "rules.trace.intake.rejectedAsCredit.other": "{rejected} items were not accepted — they stay with the customer and are neither credited nor exchanged.",
  "rules.trace.intake.hygieneOpened.one": "{opened} hygiene item opened — no refund, no send-back, not back into stock.",
  "rules.trace.intake.hygieneOpenedAsCredit.one": "{opened} hygiene item opened — no store credit, no send-back, not back into stock.",
  "rules.trace.intake.hygieneOpened.other": "{opened} hygiene items opened — no refund, no send-back, not back into stock.",
  "rules.trace.intake.hygieneOpenedAsCredit.other": "{opened} hygiene items opened — no store credit, no send-back, not back into stock.",
  "rules.trace.intake.openedAccepted.one": "{count} opened item was accepted on the return page without deduction.",
  "rules.trace.intake.openedAccepted.other": "{count} opened items were accepted on the return page without deduction.",
  "rules.trace.intake.damageOpen.one": "{open} item damaged — decision pending: send back or accept after all. Until then it does not count towards the amount.",
  "rules.trace.intake.damageOpen.other": "{open} items damaged — decision pending: send back or accept after all. Until then they do not count towards the amount.",
  "rules.trace.refund.difference": "Refund = paid {paid} minus kept {kept} = {amount}.",
  "rules.trace.refund.differenceAsCredit": "Store credit = paid {paid} minus kept {kept} = {amount}.",
  "rules.trace.refund.pack_deduction": "{title}: {opened} of {pairs} pairs opened, {single} each — deducted {deduction}.",
  "rules.trace.refund.pack_deduction_capped": "{title}: The opened pairs cost more individually than the bundle did — at most what was paid is deducted ({paid}).",
  "rules.trace.refund.pack_missing": "{title}: {missing} of {pairs} pairs not returned, {single} each — deducted {deduction}.",
  "rules.error.packPriceUnknown": "The single price for {title} can’t be read at Shopify — nothing will be booked.",
  "rules.trace.refund.store_credit_paid": "Plus the paid value of the store-credit items {paid} = {amount}.",
  "rules.trace.refund.rails": "Per rail: {payment} to the payment method, {store_credit} as store credit (store credit = paid value of the store-credit items, the rest as a refund).",
  "rules.trace.refund.rails_delta_on_store_credit": "The recomputation exceeds the refund rail: of the paid store-credit value {paid}, {store_credit} remains as store credit and the payment rail is 0.00.",
  "rules.trace.refund.open_minus_kept": "Refund = open {open} minus kept {kept} = {amount}.",
  "rules.trace.refund.open_minus_keptAsCredit": "Store credit = open {open} minus kept {kept} = {amount}.",
  "rules.trace.refund.rail.one": "Settlement goes out as {rail} ({count} item chosen as store credit).",
  "rules.trace.refund.rail.other": "Settlement goes out as {rail} ({count} items chosen as store credit).",
  "rules.trace.exchange.target": "Exchange target: {quantity} × {title} at {price}.",
  "rules.trace.exchange.list_price": "The difference compares list price with list price: price tag of the returned goods {returned}, paid {paid}.",
  "rules.trace.exchange.difference": "Exchange difference: returned {returned} against target {target} = {difference}.",
  "rules.trace.exchange.shopify_invoice": "Shopify asks {amount} additional payment for the exchange (Shopify's own calculation) — retuno names at least this amount.",
  "rules.trace.exchange.shopify_due.unknown": "Shopify's calculation for the exchange is not readable — closing without a return shipment is not offered.",
  "rules.trace.exchange.uncounted.one": "Exchange: {count} announced item was not counted at intake — {value} of the returned value.",
  "rules.trace.exchange.uncounted.other": "Exchange: {count} announced items were not counted at intake — {value} of the returned value.",
  "rules.trace.exchange.rejected.one": "Exchange: {count} item was not accepted ({value}) — decision open: no exchange item, no additional payment, no money.",
  "rules.trace.exchange.rejected.other": "Exchange: {count} items were not accepted ({value}) — decision open: no exchange item, no additional payment, no money.",
  "rules.trace.exchange.damageOpen.one": "Exchange: {count} item damaged ({value}) — decision pending: until then no exchange item, no additional payment, no money.",
  "rules.trace.exchange.damageOpen.other": "Exchange: {count} items damaged ({value}) — decision pending: until then no exchange item, no additional payment, no money.",
  "rules.trace.exchange.price_unknown.one": "{count} exchange line without a resolvable price — no difference was calculated.",
  "rules.trace.exchange.price_unknown.other": "{count} exchange lines without a resolvable price — no difference was calculated.",
  "rules.trace.exchange.same_variant.blocked.one": "{count} item is to go back as a replacement delivery — the same variant — and the reason on the return is not one the shop offers it for.",
  "rules.trace.exchange.same_variant.blocked.other": "{count} items are to go back as a replacement delivery — the same variant — and the reason on the return is not one the shop offers it for.",
  "rules.trace.exchange.no_target.one": "{count} item registered as an exchange without a target variant — no exchange item and no refund would result.",
  "rules.trace.exchange.no_targetAsCredit.one": "{count} item registered as an exchange without a target variant — no exchange item and no store credit would result.",
  "rules.trace.exchange.no_target.other": "{count} items registered as an exchange without a target variant — no exchange item and no refund would result.",
  "rules.trace.exchange.no_targetAsCredit.other": "{count} items registered as an exchange without a target variant — no exchange item and no store credit would result.",
  "rules.trace.exchange.returned_unknown.one": "{count} exchange target without a returned line — no difference was calculated.",
  "rules.trace.exchange.returned_unknown.other": "{count} exchange targets without a returned line — no difference was calculated.",
  "rules.trace.exchange.returned_units.one": "Exchange: {returned} returned item, {matched} matched to an order line.",
  "rules.trace.exchange.returned_units.other": "Exchange: {returned} returned items, {matched} matched to an order line.",
  "rules.trace.exchange.suggestion": "Exchange check: our value for the returned goods {ours} against Shopify's {suggested} = {delta}.",
  "rules.trace.exchange.suggestion.missing": "Shopify names no value for the returned goods, so the exchange has no comparison value.",
  "rules.trace.exchange.suggestion.chain": "No exchange comparison with Shopify: this order is an exchange from {original}. The goods were paid for there, and our value comes from there.",
  "rules.trace.exchange.suggestion.mixed.one": "No exchange comparison: {settled} line on this return is settled in money, so Shopify's subtotal covers other goods as well.",
  "rules.trace.exchange.suggestion.mixed.other": "No exchange comparison: {settled} lines on this return are settled in money, so Shopify's subtotal covers other goods as well.",
  "rules.trace.exchange.suggestion.unmatched.one": "No comparison against Shopify: {count} returned item could not be matched to an order line, so our own total is incomplete.",
  "rules.trace.exchange.suggestion.unmatched.other": "No comparison against Shopify: {count} returned items could not be matched to an order line, so our own total is incomplete.",
  "rules.trace.fee.label.source.measured": "Merchant label confirmed — label {tracking} was created.",
  "rules.trace.fee.label.source.none": "No merchant label was created for this return, so no label fee applies.",
  "rules.trace.fee.label.source.assumed": "No label record for this return — the rule set’s assumption applies: {merchantLabel}.",
  "rules.trace.fee.label.review.confirmed_defect": "No label fee — the team confirmed a defect (return reason “{reason}”). One confirmed defect waives the fee for the whole return.",
  "rules.trace.fee.label.review.confirmed_defect_no_reason": "No label fee — the team confirmed a defect. One confirmed defect waives the fee for the whole return.",
  "rules.trace.fee.label.desk.waived": "No label fee — waived at the intake desk.",
  "rules.trace.fee.label.desk.charged": "Label fee is charged — decided at the intake desk, whatever the rule says.",
  "rules.trace.fee.label.review.not_defect": "Return reason “{reason}” does not waive the fee — the team judged the item “not a defect”.",
  "rules.trace.fee.label.review.desk_defect_noted": "Return reason “{reason}” does not waive the fee – the team found the defect at the desk; the customer did not report it. It is only noted.",
  "rules.trace.fee.label.review.on_site_check": "No label fee — provisionally: return reason “{reason}”, the position is checked on site. If the desk finds no defect, the fee is charged.",
  "rules.trace.fee.label.labelsUsed": "{count} return labels used — the fee applies per label: {each} each.",
  "rules.trace.fee.label.charged": "Return label fee {amount} ({country}).",
  "rules.trace.fee.label.waived": "No label fee — return reason “{reason}”.",
  "rules.trace.fee.label.not_applicable": "No label fee — {merchantLabel}.",
  "rules.trace.result.clamped_to_zero": "The result would be {amount} — a payout is never below zero.",
  "rules.trace.result.capped_to_open": "The result would be {amount}, but only {open} is still open on the order — capped to the open amount.",
  "rules.trace.result.capped_nothing_returned": "No item came back as “OK” or “Damaged” — {amount} of goods value capped to {zero}.",
  "rules.trace.result.final": "Refund amount: {amount}.",
  "rules.trace.result.finalAsCredit": "Store credit amount: {amount}.",
  "rules.trace.result.rails": "Refund amount per rail: {payment} to the payment method, {store_credit} as store credit.",
  "rules.trace.result.suggestion": "Shopify suggests {suggested}, we calculate {ours} — difference {delta}.",
  "rules.trace.result.suggestion.missing": "No Shopify suggestion is stored for this return.",
  "rules.trace.result.suggestion.no_refund": "Shopify suggests no refund for this return — for an exchange that is the normal case.",
  "rules.trace.result.suggestion.no_refundAsCredit": "Shopify suggests no store credit for this return — for an exchange that is the normal case.",
  "rules.trace.result.suggestion.explained": "Of that, our own calculation explains {recomputed}; {unexplained} remains unexplained.",
  "rules.trace.result.suggestion.explained.exchange": "Of that, our own calculation explains {recomputed} and the exchange offset {netted}; {unexplained} remains unexplained.",
  "rules.warning.unmatched_returned_line.one": "{count} returned item could not be matched to an order line ({skus}). Check the amount by hand.",
  "rules.warning.unmatched_returned_line.other": "{count} returned items could not be matched to an order line ({skus}). Check the amount by hand.",
  "rules.warning.partial_booking_before": "{open} is still open. retuno has already booked money for this order once: {booked} arrived in Shopify, the rest of that booking failed. Shopify therefore already lists the items of this return as refunded — including those no money has been paid for yet. Which way the rest is paid out (payment method or store credit) is shown on the return in the “Customer's request” column per item.",
  "rules.warning.partial_booking_beforeAsCredit": "{open} is still open. retuno has already booked money for this order once: {booked} arrived in Shopify, the rest of that booking failed. Shopify therefore already lists the items of this return as credited — including those no money has been paid for yet. Which way the rest is paid out (payment method or store credit) is shown on the return in the “Customer's request” column per item.",
  "rules.warning.order_outstanding": "This order carries an open amount of {open} in Shopify that the customer has not paid yet. Please check whether the customer paid for the returned goods before any money moves.",
  "rules.warning.delivery_date_missing": "No delivery date could be determined — the return window cannot be calculated.",
  "rules.warning.delivery_date_assumed.one": "Delivery date assumed ({date}, shipping plus {graceDays} day) — the order carries no delivery event.",
  "rules.warning.delivery_date_assumed.other": "Delivery date assumed ({date}, shipping plus {graceDays} days) — the order carries no delivery event.",
  "rules.warning.access_blocked": "This order is on your block list (entry: {entry}), and there is a return anyway. Please decide by hand.",
  "rules.warning.access_line_blocked.one": "{count} returned item may not be taken back the way the customer chose, according to your settings (product tag, e.g. “no-refund”). Please decide yourself how to continue.",
  "rules.warning.access_line_blocked.other": "{count} returned items may not be taken back the way the customer chose, according to your settings (product tag, e.g. “no-refund”). Please decide yourself how to continue.",
  "rules.warning.window_expired": "The return window ended {deadline}; the return was measured on {measuredOn}.",
  "rules.warning.exchange_window_expired": "The exchange right ended {deadline}; the return was measured on {measuredOn}.",
  "rules.warning.defect_refund_window_expired": "For a defect, refunds are only made within the withdrawal period, also for loyal customers – it ended on {deadline}. Concerns: {lines}.",
  "rules.warning.defect_refund_window_expiredAsPaidCredit": "For a defect, store credit is only given within the withdrawal period, also for loyal customers – it ended on {deadline}. Concerns: {lines}.",
  "rules.warning.defect_window_expired": "The defect was reported after the warranty had expired – it ended on {deadline}. Concerns: {lines}.",
  "rules.warning.unknown_discount_code.one": "Discount code without a configured strategy: {codes}.",
  "rules.warning.unknown_discount_code.other": "Discount codes without a configured strategy: {codes}.",
  "rules.warning.exchange_lines_present.one": "{count} exchange line on this return — the exchange itself is handled separately.",
  "rules.warning.exchange_lines_present.other": "{count} exchange lines on this return — the exchange itself is handled separately.",
  "rules.warning.exchange_additional_payment": "The exchange costs {amount} more — Shopify holds the shipment until it is paid.",
  "rules.warning.exchange_price_unknown": "An exchange target has no resolvable price, so the difference is unknown.",
  "rules.warning.exchange_same_variant_reason.one": "Replacement delivery without a matching reason: {count} item is to go back in the same variant, but the shop only offers that for certain reasons. Please check whether this exchange should go out.",
  "rules.warning.exchange_same_variant_reason.other": "Replacement delivery without a matching reason: {count} items are to go back in the same variant, but the shop only offers that for certain reasons. Please check whether this exchange should go out.",
  "rules.warning.exchange_no_target.one": "Exchange without a target: {count} item is coming back, but no target variant is known — the customer would get neither goods nor money. Please clarify what the customer wanted.",
  "rules.warning.exchange_no_target.other": "Exchange without a target: {count} items are coming back, but no target variant is known — the customer would get neither goods nor money. Please clarify what the customer wanted.",
  "rules.warning.replaced_exchange_unverified.one": "Replacement not traceable ({returns}): for {count} replacement of the exchange item in Shopify, the replaced line is not in the order the way retuno recorded it. Without it the calculation for the whole order is not safe — please check in Shopify.",
  "rules.warning.replaced_exchange_unverified.other": "Replacement not traceable ({returns}): for {count} replacements of the exchange item in Shopify, the replaced line is not in the order the way retuno recorded it. Without it the calculation for the whole order is not safe — please check in Shopify.",
  "rules.warning.replaced_exchange_total_mismatch": "Replacement cannot be reconciled: the line items and shipping come to {lines}, Shopify gives the order total as {total} — a difference of {difference}. Whether the value of the replaced exchange item is still in that total is therefore unknown, so retuno does not deduct it. A difference equal to that item means Shopify no longer counts it; a small one can be a tip, a duty or a fee that retuno does not read. Please check in Shopify.",
  "rules.warning.exchange_returned_unknown": "An exchange has no returned line to value it against, so the difference is unknown.",
  "rules.warning.exchange_value_exceeds_suggestion": "Our value for the returned goods {ours} is above Shopify's {suggested}.",
  "rules.warning.exchange_value_below_suggestion": "Our value for the returned goods {ours} is below Shopify's {suggested} — the customer would pay the difference.",
  "rules.warning.exchange_chain_refund_customer": "This order is an exchange from {original}, but the two orders do not reliably belong to the same customer. retuno therefore does not refund on its own – please check and refund in Shopify in order {original}.",
  "rules.warning.exchange_chain_refund_own_payment": "This order is an exchange from {original} and carries a payment of its own – the money sits in two orders. retuno therefore does not refund on its own – please refund in Shopify.",
  "rules.warning.exchange_chain_refund_multi_step": "This order is an exchange from {original}, and {original} is itself an exchange. retuno does not refund across several exchange steps on its own – please refund in Shopify in the first paid order.",
  "rules.warning.exchange_chain_refund_exceeds": "This order is an exchange from {original}. {amount} is due, but only {rest} can still be refunded in {original}. retuno therefore does not refund on its own – please refund in Shopify in order {original}.",
  "rules.trace.exchange.policy.blocked": "Exchange policy: not allowed ({reason}: {detail}).",
  "rules.trace.exchange.policy.target": "Exchange policy: target variant not allowed ({reason}).",
  "rules.trace.exchange.policy.stock_unchecked": "Stock check is switched off — the exchange was promised without asking.",
  "rules.trace.exchange.price_drop": "Target variant is cheaper: {amount} difference — {handling}.",
  "rules.trace.exchange.price_drop_capped": "The price tags differ by {listed}, but only {paid} was paid for the returned item — at most what was paid counts.",
  "rules.trace.shipping.refunded": "Original shipping refunded: {amount} ({mode}).",
  "rules.trace.shipping.refundedAsCredit": "Original shipping credited: {amount} ({mode}).",
  "rules.trace.shipping.kept": "Original shipping not refunded ({reason}).",
  "rules.trace.shipping.keptAsCredit": "Original shipping not credited ({reason}).",
  "rules.warning.exchange_policy_blocked": "This exchange violates the exchange policy ({reason}: {detail}). It would not have been possible through the portal — please check before anything ships.",
  "rules.warning.exchange_stock_unchecked": "The exchange was promised without a stock check. Only the warehouse knows whether the target variant is available.",
  "rules.warning.exchange_price_drop_kept": "The target variant is {amount} cheaper than what came back. Under the current policy the shop keeps that amount.",
  "rules.warning.exchange_price_drop_settled": "The target variant is {amount} cheaper — the difference goes to the customer. Shopify also settles the exchange itself; check the return in the Shopify admin to see whether the customer ends up with exactly this amount.",
  "rules.warning.shipping_refund_applied": "The order's shipping cost ({amount}) is refunded as well. It is added on top of the goods value in the total — check whether that is what you want for this case.",
  "rules.warning.shipping_refund_appliedAsCredit": "The order's shipping cost ({amount}) is credited as well. It is added on top of the goods value in the total — check whether that is what you want for this case.",
  "rules.warning.unmatched_exchanged_line.one": "{count} exchanged item could not be matched to an order line ({skus}). Check the difference by hand.",
  "rules.warning.unmatched_exchanged_line.other": "{count} exchanged items could not be matched to an order line ({skus}). Check the difference by hand.",
  "rules.warning.exchange_units_uncounted.one": "{count} item announced for exchange did not arrive — {value} of the returned value. The customer owes that much more; someone has to decide why it is missing.",
  "rules.warning.exchange_units_uncounted.other": "{count} items announced for exchange did not arrive — {value} of the returned value. The customer owes that much more; someone has to decide why they are missing.",
  "rules.warning.exchange_rejected_partial.one": "{count} item on the exchange is not accepted, and something else arrived or is missing. You decide on the return which exchange item is shipped.",
  "rules.warning.exchange_rejected_partial.other": "{count} items on the exchange are not accepted, and something else arrived or is missing. You decide on the return which exchange item is shipped.",
  "rules.warning.mixed_settlement.one": "{refund} line as a refund and {store_credit} as store credit in one return — retuno books each part its own way: the refund to the payment method, the credit as store credit.",
  "rules.warning.mixed_settlement.other": "{refund} lines as a refund and {store_credit} as store credit in one return — retuno books each part its own way: the refund to the payment method, the credit as store credit.",
  "rules.warning.no_refundable_lines": "No line on this return is settled as a refund.",
  "rules.warning.refund_exceeds_open": "The calculated amount {amount} exceeds the open amount {open} on the order — the calculation is broken; please check before any money moves.",
  "rules.warning.open_exceeds_net_payment": "The calculation assumes {open} is open, but only {net} is paid and not refunded on the order (net payment). The calculation is broken — please check before any money moves.",
  "rules.warning.open_exceeds_net_paymentAsCredit": "The calculation assumes {open} is open, but only {net} is paid and not credited on the order (net payment). The calculation is broken — please check before any money moves.",
  "rules.warning.withheld_before_exceeds_open": "{withheld} was withheld on earlier returns of this order, but only {open} is still open. Part of it was apparently refunded outside retuno — please check the order in Shopify before any money moves.",
  "rules.warning.withheld_before_exceeds_openAsCredit": "{withheld} was withheld on earlier returns of this order, but only {open} is still open. Part of it was apparently paid back outside retuno — please check the order in Shopify before any money moves.",
  "rules.warning.withheld_before_foreign_refund": "This order has a refund that did not go through retuno. retuno cannot see whether it paid back withheld money — please check in Shopify.",
  "rules.warning.withheld_before_foreign_refundAsCredit": "This order has a store credit that did not go through retuno. retuno cannot see whether it paid back withheld money — please check in Shopify.",
  "rules.warning.refund_without_returned_units": "No item came back as “OK” or “Damaged”, yet the chain calculated {amount} of goods value. The calculation is broken — please check before any money moves.",
  "rules.warning.intake_units_missing.one": "{count} announced item did not arrive. Someone has to decide why before money moves.",
  "rules.warning.intake_units_missing.other": "{count} announced items did not arrive. Someone has to decide why before money moves.",
  "rules.warning.sibling_returned_exceeds_ordered.one": "{title}: {returns} received {count} item, which together with this return is more than was ordered. The amount is calculated as if nothing had come back via {returns} — please check by hand.",
  "rules.warning.sibling_returned_exceeds_ordered.other": "{title}: {returns} received {count} items, which together with this return is more than was ordered. The amount is calculated as if nothing had come back via {returns} — please check by hand.",
  "rules.warning.above_auto_limit": "{amount} is above the limit for automatic execution ({limit}).",
  "rules.warning.amount_exceeds_suggestion": "Our goods value {ours} differs from Shopify's suggestion {suggested}; {unexplained} of that is unexplained.",
  "rules.warning.amount_below_suggestion": "Our goods value {ours} differs from Shopify's suggestion {suggested}; {unexplained} of that is unexplained.",
  "page.returns.column.decision": "Decision",
  "page.returns.column.amount": "Refund",
  "page.repeat.title": "Repeat returns",
  "page.repeat.hubHint": "Customers with more than one return — for fraud prevention, with logged access.",
  "page.repeat.minimum": "From two returns onwards. Anyone who returned once is not listed here. Every visit to this page is logged and can be read under Administration → Operations & privacy.",
  "page.repeat.periodHeading": "Choose a period",
  "page.repeat.period.90": "Last 90 days",
  "page.repeat.period.365": "Last 12 months",
  "page.repeat.period.all": "All time",
  "page.repeat.tableLabel": "Customers with more than one return",
  "page.repeat.column.customer": "Customer",
  "page.repeat.column.returns": "Returns",
  "page.repeat.column.orders": "Orders",
  "page.repeat.column.units": "Items",
  "page.repeat.column.flagged": "Needed attention",
  "page.repeat.column.refunded": "Refunded",
  "page.repeat.column.last": "Last one",
  "page.repeat.column.action": "Block list",
  "page.repeat.flaggedShare": "{share}% of returns",
  "page.repeat.refundedNone": "—",
  "page.repeat.marked": "Review",
  "page.repeat.block": "Add to block list",
  "page.repeat.blockNoRight": "Your role cannot change the block list.",
  "page.repeat.empty": "Nobody returned more than once in this period.",
  "page.repeat.emptyNoShop": "No shop connected yet — there is nothing to count.",
  "page.settingsAccess.prefilled": "The address {value} has been placed in the block list below but is NOT saved yet. Check the entry and save it — or leave the page, then nothing happens.",
  "page.repeat.flaggedValue.one": "{count} return",
  "page.repeat.flaggedValue.other": "{count} returns",
  "page.returns.tileHeading": "What is waiting",
  "page.returns.filter.all": "All",
  "page.returns.filter.clarify": "Needs review",
  "page.returns.flag.recalcPending": "calculation open",
  "page.returns.flag.intakeClarification": "Clarification at the intake desk",
  "page.returns.flag.straySendBack": "Stray item – send back with customer label",
  "page.returns.flag.unbookedApproval": "Approval without booking",
  "page.returns.flag.merchantContact": "You contact the customer",
  "page.returns.flag.refundFailed": "Refund not carried out",
  "page.returns.flag.refundPartial": "Refund only partly booked",
  "page.returns.flag.notViaRetuno": "Not via retuno",
  "page.returns.foreignToggle": "Hide “Not via retuno”",
  "page.returns.refundedInShopify": "refunded in Shopify",
  "page.returns.refunded": "refunded",
  "page.returns.tile.open": "Open",
  "page.returns.tile.closed": "Closed",
  "page.returns.emptyFiltered": "No return matches this filter right now.",
  "page.returnDetail.rulesHeading": "Refund calculation",
  "page.returnDetail.rulesHeadingAsCredit": "Store credit calculation",
  "page.returnDetail.rulesNone": "This return has not been evaluated yet. An evaluation runs once the return is approved in Shopify.",
  "page.returnDetail.rulesDecision": "Process decision",
  "page.returnDetail.rulesWindow": "Return window",
  "page.returnDetail.rulesLabelFee": "Label fee",
  "page.returnDetail.rulesSuggestedMissing": "not available",
  "page.returnDetail.reevaluate": "Evaluate again",
  "page.returnDetail.reevaluateNote": "Recalculates this return with today's rule version.",
  "page.returnDetail.reevaluated": "Evaluated again.",
  "page.returnDetail.error.reevaluateFailed": "The re-evaluation did not run. Nothing was changed — the existing evaluation still applies.",
  "page.returnDetail.error.reevaluatePackPrice": "The re-evaluation did not run: the single price of an opened hygiene bundle can’t be read at Shopify right now. Nothing was changed. Try again in a moment.",
  "page.returnDetail.exchangeHoldHeading": "Exchange: invoice amount not paid yet!",
  "page.returnDetail.exchangeHold.awaiting": "Waiting for payment — invoice sent on {date}. Shopify holds the shipment of the exchange item until the customer pays.",
  "page.returnDetail.exchangeHold.invoiceFailed": "Waiting for payment — the invoice could NOT be sent on {date}: {reason}. The customer knows nothing about the additional payment, and the shipment stays on hold until someone sorts this out by hand.",
  "page.returnDetail.exchangeHold.notVisible": "Whether an additional payment is due is unknown (as of {date}): the shop lacks the permission to read fulfillment orders. That is not an all-clear — the Shopify admin shows whether the shipment is held.",
  "page.returnDetail.exchangeHold.released": "Payment confirmed, shipment released on {date}.",
  "page.returnDetail.exchangeHold.releasedAutomatic": "Additional payment received in full — shipment released by retuno on {date}.",
  "page.returnDetail.exchangeHold.releasedExternal": "The shipment was released in Shopify — detected by retuno on {date}.",
  "page.returnDetail.exchangeHold.autoWaiting.outstanding": "As of {date}: {amount} is still outstanding in Shopify. The shipment stays on hold.",
  "page.returnDetail.exchangeHold.autoWaiting.capturable": "As of {date}: The payment is only authorized and not yet captured. The shipment stays on hold until it is captured.",
  "page.returnDetail.exchangeHold.autoWaiting.paymentsShort": "As of {date}: {paid} has come in since the invoice; {due} was due. The shipment stays on hold.",
  "page.returnDetail.exchangeHold.autoWaiting.noAmount": "As of {date}: retuno does not know the amount due and therefore does not release on its own. Whether the additional payment has been made is shown on the order in Shopify; the shipment can be released there.",
  "page.returnDetail.exchangeHold.autoWaiting.unattributed": "As of {date}: retuno cannot match this return's exchange item in Shopify and therefore does not release on its own.",
  "page.returnDetail.exchangeHold.autoWaiting.rejected": "As of {date}: Shopify rejected the release. retuno tries again on the next run; the reason is on the fulfillment order in the Shopify admin.",
  "page.returnDetail.exchangeHold.releaseNote": "retuno checks every 10 minutes whether the additional payment has arrived in full, and then releases the shipment itself.",
  "page.returnDetail.exchangeHold.error.automaticOnly": "Not released: retuno releases the shipment itself as soon as Shopify shows the additional payment as paid. Nothing was changed.",
  "page.returns.holdFlag.invoiceFailed": "Invoice failed",
  "page.returns.holdFlag.notVisible": "Additional payment unknown",
  "page.returnDetail.approveNoteStoreCredit": "Approving issues {amount} as store credit — nothing is paid out. A second click does not issue it twice.",
  "page.returnDetail.approveNoteNothing": "Nothing is paid out and nothing is credited here — releasing completes the return. The exchange item is created when the goods are put away, and only for items counted as “OK”.",
  "page.returnDetail.approveNoteNothingNeutral": "Nothing is paid out and nothing is credited here — releasing completes the return.",
  "rules.trace.discount.uncoded.one": "One discount without a code on the order: {labels}. It does not count for a code strategy.",
  "rules.trace.discount.uncoded.other": "{count} discounts without a code on the order: {labels}. They do not count for a code strategy.",
  "rules.warning.uncoded_discount.one": "The order carries a discount WITHOUT a code ({labels}). It is visible in the Shopify admin, but no code strategy applies to it — please check whether the fallback calculates correctly here.",
  "rules.warning.uncoded_discount.other": "The order carries {count} discounts WITHOUT a code ({labels}). They are visible in the Shopify admin, but no code strategy applies to them — please check whether the fallback calculates correctly here.",
  "page.returnDetail.portal.photoOpen": "Open customer photo {number} at full size",
  "page.returnDetail.decision.auto": "Automatic",
  "page.returnDetail.decision.confirm": "Approval required",
  "page.returnDetail.decision.clarify": "Needs review",
  "page.returnDetail.evaluationStatus.pending": "open",
  "page.returnDetail.evaluationStatus.approved": "approved",
  "page.returnDetail.evaluationStatus.rejected": "rejected",
  "page.returnDetail.evaluationStatus.executed": "refunded",
  "page.returnDetail.evaluationStatus.executedAsCredit": "credited",
  "page.returnDetail.evaluationStatus.executedWithoutRefund": "closed without refund",
  "page.returnDetail.evaluationStatus.closedWithoutRefund": "closed – refunded in Shopify",
  "page.returnDetail.evaluationStatus.exchangeCompleted": "exchange completed",
  "page.returnDetail.evaluationStatus.executedWithoutRefundAsCredit": "closed without store credit",
  "page.returnDetail.evaluationStatus.failed": "failed",
  "page.returnDetail.evaluationStatus.superseded": "superseded",
  "page.returnDetail.windowStage.delivery_event": "from the carrier delivery",
  "page.returnDetail.windowStage.shipment_grace": "assumed from the shipping date",
  "page.returnDetail.windowStage.order_date": "assumed from the order date",
  "page.returnDetail.windowStage.missing": "no basis could be determined",
  "page.returnDetail.approve": "Release and refund",
  "page.returnDetail.approveAsCredit": "Release and credit",
  "page.returnDetail.approveNothing": "Release",
  "page.returnDetail.approveDespiteClarification": "Refund despite clarification",
  "page.returnDetail.approveDespiteClarificationAsCredit": "Credit despite clarification",
  "page.returnDetail.clarificationConfirmNote": "There is an open clarification on this return: {clarification}. Refunding now pays out {amount} and resolves the clarification.",
  "page.returnDetail.clarificationConfirmNoteAsCredit": "There is an open clarification on this return: {clarification}. Crediting now credits {amount} as store credit and resolves the clarification.",
  "page.returnDetail.clarificationConfirmNoteBare": "There is an open clarification on this return. Refunding now pays out {amount} and resolves the clarification.",
  "page.returnDetail.clarificationConfirmNoteBareAsCredit": "There is an open clarification on this return. Crediting now credits {amount} as store credit and resolves the clarification.",
  "page.returnDetail.reject": "Reject refund",
  "page.returnDetail.rejectConfirm": "Yes, reject refund",
  "page.returnDetail.rejectAsExchange": "Reject exchange",
  "page.returnDetail.rejectAsOpenExchange": "Decline review",
  "page.returnDetail.rejectAsCredit": "Reject store credit",
  "page.returnDetail.rejectPending": "Rejecting …",
  "page.returnDetail.rejectReason.label": "Reason for the customer",
  "page.returnDetail.rejectReason.windowExpired": "Return period expired",
  "page.returnDetail.rejectReason.condition": "Item not in its original condition",
  "page.returnDetail.rejectReason.otherReason": "Other reason",
  "page.returnDetail.rejectReason.note": "Note to the customer (optional)",
  "page.returnDetail.rejectReason.notify": "Email the customer",
  "page.returnDetail.windowGoodwill.button": "Issue store credit as goodwill",
  "page.returnDetail.windowGoodwill.hint": "Instead of the refund the customer gets store credit worth the goods, without bonus and without deducting the label fee. The return closes once the goods are stored at the intake desk.",
  "page.returnDetail.windowGoodwill.confirm": "Agreed with the customer",
  "page.returnDetail.windowGoodwill.pending": "issuing …",
  "page.returnDetail.windowGoodwill.done": "Store credit issued as goodwill. The return closes once the goods are stored at the intake desk.",
  "page.returnDetail.windowGoodwill.error.confirm": "Please confirm that this was agreed with the customer. Nothing was issued.",
  "page.returnDetail.windowGoodwill.error.notWindowCase": "The evaluation is no longer a clarification about the return window — reload the page. Nothing was issued.",
  "page.returnDetail.windowGoodwill.error.nothingToCredit": "This return has no line with a refund or store-credit wish. Nothing was issued.",
  "page.returnDetail.windowGoodwill.error.labelFeeLocked": "The label fee can no longer be waived on this return. Nothing was issued.",
  "page.returnDetail.windowGoodwill.error.notCounted": "The goods have not been counted yet — count them at the intake desk first, then issue the store credit. Nothing was issued.",
  "page.returnDetail.windowGoodwill.hintStored": "Instead of the refund the customer gets store credit worth the goods, without bonus and without deducting the label fee. The goods are already stored.",
  "page.returnDetail.windowGoodwill.doneClosed": "Store credit issued as goodwill. The return is closed.",
  "page.returnDetail.windowGoodwill.doneStoredOpen": "Store credit issued as goodwill. The goods are stored; Shopify still reports the return as open – reload the page in a few seconds.",
  "page.returnDetail.windowGoodwill.error.refundUnclear": "It is not certain that the store credit was booked. Reload the page and check the timeline before trying again.",
  "page.returnDetail.windowAccept.button": "Accept return as a goodwill gesture",
  "page.returnDetail.windowAccept.confirm": "Agreed with the customer",
  "page.returnDetail.windowAccept.hint": "The return then counts as registered, even though the withdrawal period has expired. The customer receives the email “Withdrawal period – goodwill acceptance” and can send the parcel. After that it runs like any other return: the refund follows your rules, and the intake desk shows no hint about the deadline.",
  "page.returnDetail.windowAccept.pending": "accepting …",
  "page.returnDetail.windowAccept.done": "Return accepted as a goodwill gesture. The customer receives the email and can send the parcel.",
  "page.returnDetail.windowAccept.doneNoMail": "Return accepted as a goodwill gesture. The email to the customer was not sent, though – write to them under “Message to the customer” with the template “Withdrawal period – goodwill acceptance”.",
  "page.returnDetail.windowAccept.error.confirm": "Please confirm that this was agreed with the customer. Nothing was accepted.",
  "page.returnDetail.windowAccept.error.notWindowCase": "This request did not come in after the withdrawal period – reload the page. Nothing was accepted.",
  "page.returnDetail.approveNote": "Approving pays out {amount} through Shopify. A second click does not pay twice.",
  "page.returnDetail.clarifyNote": "Refund still open: check the reasons listed below and decide whether a goodwill acceptance is possible. If so, click “Release despite warnings”, otherwise “Reject refund”.",
  "page.returnDetail.clarifyNoteAsCredit": "Store credit still open: check the reasons listed below and decide whether a goodwill acceptance is possible. If so, click “Release despite warnings”, otherwise “Reject store credit”.",
  "page.returnDetail.clarifyNoteAsExchange": "Exchange still open: check the reasons listed below and decide whether a goodwill acceptance is possible. If so, click “Release despite warnings” – retuno then creates the exchange item in Shopify –, otherwise “Reject exchange”.",
  "page.returnDetail.clarifyNoteAsOpenExchange": "Review still open: check the reasons listed below and decide whether a goodwill acceptance is possible. If so, click “Release despite warnings”, otherwise “Decline review”. Nothing is refunded for this exchange, and the exchange stays in place.",
  "page.returnDetail.clarifyRejectNote": "“Reject refund” means: the return leaves the “Needs review” list and nothing is refunded. If something changes later – for example the item arrives after all – “Evaluate again” recalculates the return.",
  "page.returnDetail.clarifyRejectNoteAsCredit": "“Reject store credit” means: the return leaves the “Needs review” list and nothing is credited. If something changes later – for example the item arrives after all – “Evaluate again” recalculates the return.",
  "page.returnDetail.clarifyRejectNoteAsExchange": "“Reject exchange” means: the exchange item is removed from the return and the return leaves the “Needs review” list. The goods are back and there is no exchange — Shopify then shows an amount open in the customer’s favour; retuno writes how much into the history. Decide afterwards whether you refund or send the goods back. If something changes later, “Evaluate again” recalculates the return.",
  "page.returnDetail.clarifyRejectNoteAsOpenExchange": "“Decline review” means: the return leaves the “Needs review” list. The exchange stays in place and nothing is refunded. If something changes later – for example the item arrives –, “Evaluate again” recalculates the return.",
  "page.returnDetail.exchangeHeld.approve": "The exchange item is waiting for your approval. If you approve, retuno creates it in Shopify; if you reject, it is removed from the return.",
  "page.returnDetail.exchangeHeld.reject": "If you reject, the held exchange item is removed from the return. The goods are back, and there is then no exchange and no refund — Shopify then shows an amount open in the customer’s favour; retuno writes how much into the history after the rejection. Decide afterwards whether you refund or send the goods back.",
  "page.returnDetail.exchangeHeld.rejectAsCredit": "If you reject, the held exchange item is removed from the return. The goods are back, and there is then no exchange and no store credit — Shopify then shows an amount open in the customer’s favour; retuno writes how much into the history after the rejection. Decide afterwards whether you credit or send the goods back.",
  "page.returnDetail.exchangeHeld.switched": "The exchange has already been processed and switched in Shopify on {date}.",
  "page.returnDetail.refundFailedWayOut": "That is why this return is listed under “Needs review” in retuno until it is evaluated again. Use “Evaluate again” below.",
  "page.returnDetail.closedOpen.failed": "What to do: check this order in Shopify to see whether the customer already got the money. If not: click “Evaluate again” here, then “Release and refund”. If yes: “Evaluate again”, then “Reject refund” – then retuno won't refund a second time.",
  "page.returnDetail.closedOpen.failedAsCredit": "What to do: check this order in Shopify to see whether the customer already has the money as store credit. If not: click “Evaluate again” here, then “Release and credit”. If yes: “Evaluate again”, then “Reject store credit” – then retuno won't credit a second time.",
  "page.returnDetail.closedOpen.refunded_at_shopify": "What to do: check in Shopify whether the refunded amount is right. If it is, click “Evaluate again” here, then “Reject refund” – retuno refunds nothing more and the return is done.",
  "page.returnDetail.closedOpen.refunded_at_shopifyAsCredit": "What to do: check in Shopify whether the credited amount is right. If it is, click “Evaluate again” here, then “Reject store credit” – retuno credits nothing more and the return is done.",
  "page.returnDetail.closedOpen.store_credit_unavailable": "Not refunded yet: the customer asked for store credit, and your shop can't give store credit right now. Shopify only offers store credit with the new customer accounts. What to do: turn on the new customer accounts in Shopify, then click “Release and refund” here. If that isn't possible, refund the customer another way, for example by bank transfer, and click “Reject refund” here – then retuno won't refund a second time.",
  "page.returnDetail.closedOpen.store_credit_unavailableAsCredit": "Not credited yet: the customer asked for store credit, and your shop can't give store credit right now. Shopify only offers store credit with the new customer accounts. What to do: turn on the new customer accounts in Shopify, then click “Release and credit” here. If that isn't possible, refund the customer another way, for example by bank transfer, and click “Reject store credit” here – then retuno won't credit a second time.",
  "page.returnDetail.closedOpen.no_refundable_transaction": "Not refunded yet: this order has no payment Shopify can refund to, for example because it was paid with a gift card or by bank transfer. What to do: refund the customer another way, for example by bank transfer, then click “Reject refund” here – then retuno won't refund a second time.",
  "page.returnDetail.closedOpen.mixed_rails": "Not refunded yet: part goes back to the customer's payment method, part as store credit. The receiving desk couldn't book that by itself in the past; today it can. What to do: click “Release and refund” here – retuno books both parts.",
  "page.returnDetail.closedOpen.clarify": "Not refunded yet: under your rules, retuno can't decide this on its own. The reasons are listed in the calculation below. What to do: check the reasons. If everything is fine, click “Release despite warnings”, otherwise “Reject refund”.",
  "page.returnDetail.closedOpen.clarifyAsCredit": "Not credited yet: under your rules, retuno can't decide this on its own. The reasons are listed in the calculation below. What to do: check the reasons. If everything is fine, click “Release despite warnings”, otherwise “Reject store credit”.",
  "page.returnDetail.closedOpen.no_decider": "Not refunded yet: nobody was signed in when the parcel was put away, and retuno only refunds under a person's name. What to do: check the calculation and click “Release and refund”.",
  "page.returnDetail.closedOpen.no_deciderAsCredit": "Not credited yet: nobody was signed in when the parcel was put away, and retuno only credits under a person's name. What to do: check the calculation and click “Release and credit”.",
  "page.returnDetail.closedOpen.not_sent": "Not refunded yet: retuno didn't send the refund to Shopify. What to do: click “Release and refund” here again.",
  "page.returnDetail.closedOpen.not_sentAsCredit": "Not credited yet: retuno didn't send the store credit to Shopify. What to do: click “Release and credit” here again.",
  "page.returnDetail.closedOpen.changed": "Not refunded yet: something changed on this return after it was closed, and retuno calculated again. What to do: check the new calculation. If it's right, click “Release and refund”, otherwise “Reject refund”.",
  "page.returnDetail.closedOpen.changedAsCredit": "Not credited yet: something changed on this return after it was closed, and retuno calculated again. What to do: check the new calculation. If it's right, click “Release and credit”, otherwise “Reject store credit”.",
  "page.returnDetail.closedOpen.nothing_due": "There is nothing left to refund. What to do: click “Release” further down in the “Refund calculation” card – that settles the calculation.",
  "page.returnDetail.closedOpen.nothing_dueAsCredit": "There is nothing left to credit. What to do: click “Release” further down in the “Store credit calculation” card – that settles the calculation.",
  "page.returnDetail.booking.booked": "Refund booked: {amount} {rail} on {at}.",
  "page.returnDetail.booking.credited": "Credited as store credit: {amount} on {at}.",
  "page.returnDetail.booking.bookedMixed": "Booked on {at}: {payment} refunded to the payment method and {storeCredit} credited as store credit.",
  "page.returnDetail.booking.bookedMixedAsPaidCredit": "Booked on {at}: {payment} and {storeCredit} credited as store credit.",
  "page.returnDetail.booking.closedAtPutaway": "Closed without a refund when {name} put it away: there is nothing to refund (0.00). That was the put-away, not a separate approval; the calculation is above.",
  "page.returnDetail.booking.closedAtPutawayAsCredit": "Closed without a store credit when {name} put it away: there is nothing to credit (0.00). That was the put-away, not a separate approval; the calculation is above.",
  "page.returnDetail.booking.feeNotCharged": "The label fee was higher than the value of the returned goods: {amount} of it was not deducted and will not be charged to the customer.",
  "page.returnDetail.booking.pendingStored": "What to do: click “Release and refund” further down in the “Refund calculation” card. Do not refund in Shopify – Shopify shows the refund as due because the items are already processed there.",
  "page.returnDetail.booking.pendingStoredAsCredit": "What to do: click “Release and credit” further down in the “Store credit calculation” card. Do not refund in Shopify – Shopify shows the refund as due because the items are already processed there.",
  "page.returnDetail.booking.pending": "What to do: click “Complete” at the intake desk – then the items are put away and refunded.",
  "page.returnDetail.booking.pendingAsCredit": "What to do: click “Complete” at the intake desk – then the items are put away and credited as store credit.",
  "page.returnDetail.booking.pendingDecision": "Refund still open: a decision is still needed on the damaged or opened items.",
  "page.returnDetail.booking.pendingDecisionAsCredit": "Store credit still open: a decision is still needed on the damaged or opened items.",
  "page.returnDetail.storeOnApprove.note": "The goods are counted but not yet stocked at the intake desk. The button refunds {amount} and completes the return; stocking happens at the intake desk.",
  "page.returnDetail.storeOnApprove.noteAsCredit": "The goods are counted but not yet stocked at the intake desk. The button credits {amount} as store credit and completes the return; stocking happens at the intake desk.",
  "page.returnDetail.storeOnApprove.noteStocked": "The goods are counted and already stocked at the intake desk. The button refunds {amount} and completes the return.",
  "page.returnDetail.storeOnApprove.noteStockedAsCredit": "The goods are counted and already stocked at the intake desk. The button credits {amount} as store credit and completes the return.",
  "page.returnDetail.photoDuty.blocked": "Without a photo, retuno does not complete the return or refund anything. The photo is added to the item at the intake desk.",
  "page.returnDetail.photoDuty.blockedAsCredit": "Without a photo, retuno does not complete the return or credit anything. The photo is added to the item at the intake desk.",
  "page.returnDetail.storeOnApprove.desk": "Complete at the intake desk",
  "page.returnDetail.storeOnApprove.failed": "Not refunded: {reason}",
  "page.returnDetail.storeOnApprove.failedAsCredit": "Not credited: {reason}",
  "page.returnDetail.stockOpen.link": "Put into stock at the receiving desk",
  "page.returnDetail.foreign.title": "Not registered through retuno",
  "page.returnDetail.foreign.body": "This return was not registered through retuno — neither in the customer portal nor at the intake desk, but for example in the Shopify admin or through another returns portal. Handle it in one place only: if it is also refunded or booked in somewhere else, that happens twice.",
  "page.returnDetail.closingSoon": "Shopify will close the return in a moment – reload the page in a few seconds.",
  "page.returnDetail.storeAfterRefund.atDesk": "Not put away yet — complete it at the intake desk.",
  "page.returnDetail.booking.approvedUnbooked": "Approved, but not booked: no refund is recorded for this approval.",
  "page.returnDetail.booking.approvedUnbookedAsCredit": "Approved, but not booked: no store credit is recorded for this approval.",
  "page.returnDetail.revokeApproval.open": "Withdraw approval",
  "page.returnDetail.revokeApproval.confirm": "The approval of {amount} is withdrawn. Nothing is paid; the calculation stays with the evaluations as superseded. You can re-evaluate afterwards.",
  "page.returnDetail.revokeApproval.submit": "Yes, withdraw",
  "page.returnDetail.revokeApproval.done": "Approval withdrawn. Re-evaluate now.",
  "page.returnDetail.revokeApproval.error.notUnbooked": "This approval is already booked or no longer open. Nothing was changed.",
  "page.returnDetail.revokeApproval.error.tooFresh": "This approval was just given — a booking may still be running. Please try again in 15 minutes. Nothing was changed.",
  "page.returnDetail.revokeApproval.error.moneyUnknown": "Shopify shows a refund that may belong to this approval. Please check the booking. Nothing was changed.",
  "page.returnDetail.revokeApproval.error.moneyUnknownAsCredit": "Shopify shows a store credit that may belong to this approval. Please check the booking. Nothing was changed.",
  "page.returnDetail.revokeApproval.error.shopifyUnreadable": "Shopify could not be read just now. Please try again shortly. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.open": "Close without refund",
  "page.returnDetail.closeWithoutRefund.note": "Shopify shows {amount} refunded on this order, not through retuno. “Close without refund” marks the return as closed in retuno. Nothing is booked and no money moves.",
  "page.returnDetail.closeWithoutRefund.confirmLabel": "The customer has already received the money (refunded in Shopify).",
  "page.returnDetail.closeWithoutRefund.submit": "Yes, close without refund",
  "page.returnDetail.closeWithoutRefund.pending": "Closing …",
  "page.returnDetail.closeWithoutRefund.done": "Closed without refund. The money was refunded in Shopify; retuno books nothing more.",
  "page.returnDetail.closeWithoutRefund.error.confirm": "Please confirm with the checkbox that the customer has already received the money. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.error.notOpen": "This calculation is no longer open. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.error.notClosed": "The return is not closed in Shopify yet. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.error.notRefunded": "Shopify shows no refund outside retuno on this order. Nothing was changed. If the customer got the money another way, click “Reject refund”.",
  "page.returnDetail.closeWithoutRefund.error.inProgress": "An approval on this return is booking right now. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.error.exchangeHeld": "A held exchange is still waiting on this return. Nothing was changed.",
  "page.returnDetail.closeWithoutRefund.error.shopifyUnreadable": "Shopify could not be read just now. Please try again shortly. Nothing was changed.",
  "page.returnDetail.booking.rail.payment": "to the payment method",
  "page.returnDetail.booking.storedAfterRefund": "Stored without a second refund: {amount} had already been refunded on {at}.",
  "page.returnDetail.booking.storedAfterRefundAsCredit": "Stored without a second store credit: {amount} had already been credited on {at}.",
  "page.returnDetail.booking.stockNotRestocked": "Shopify’s stock was not restored for these items.",
  "page.returnDetail.shopifyDue.noShopify": "Please do not refund in Shopify.",
  "page.returnDetail.shopifyDue.amount.open": "retuno refunds {amount}.",
  "page.returnDetail.shopifyDue.amount.openAsCredit": "retuno credits {amount} as store credit.",
  "page.returnDetail.shopifyDue.amount.done": "retuno refunded {amount}.",
  "page.returnDetail.shopifyDue.amount.doneAsCredit": "retuno credited {amount} as store credit.",
  "page.returnDetail.shopifyDue.single": "The difference of {difference} comes from {label}: {why}",
  "page.returnDetail.shopifyDue.several": "The difference of {difference} is made up of: {items}.",
  "page.returnDetail.shopifyDue.item.less": "{cents} for {label}",
  "page.returnDetail.shopifyDue.item.more": "{cents} more for {label}",
  "page.returnDetail.shopifyDue.item.rest": "{cents} without a known reason",
  "page.returnDetail.shopifyDue.restOnly": "retuno knows no reason for the difference of {difference} — please check it yourself.",
  "page.returnDetail.shopifyDue.nothingAcceptedOpen": "The difference of {difference} arises because no decision has been made on “Damaged” yet — until then nothing is refunded.",
  "page.returnDetail.shopifyDue.nothingAcceptedOpenAsCredit": "The difference of {difference} arises because no decision has been made on “Damaged” yet — until then nothing is credited.",
  "page.returnDetail.shopifyDue.nothingAccepted": "The difference of {difference} arises because no item was accepted — nothing is refunded.",
  "page.returnDetail.shopifyDue.nothingAcceptedAsCredit": "The difference of {difference} arises because no item was accepted — nothing is credited.",
  "page.returnDetail.shopifyDue.release": "Just approve in retuno — the {amount} will then be refunded automatically.",
  "page.returnDetail.shopifyDue.releaseAsCredit": "Just approve in retuno — the {amount} will then be credited as store credit automatically.",
  "page.returnDetail.shopifyDue.label.tier_recomputation": "the volume discount",
  "page.returnDetail.shopifyDue.label.bundle_recomputation": "the bundle price",
  "page.returnDetail.shopifyDue.label.free_item_lapsed": "the free item",
  "page.returnDetail.shopifyDue.label.discount_recomputation": "the discount",
  "page.returnDetail.shopifyDue.label.label_fee": "the return label",
  "page.returnDetail.shopifyDue.label.store_credit_bonus": "the store credit bonus",
  "page.returnDetail.shopifyDue.why.tier_recomputation.less": "After the return fewer items are kept, so the volume discount is smaller — the difference is charged afterwards.",
  "page.returnDetail.shopifyDue.why.tier_recomputation.more": "After the return the volume discount was recalculated in the customer's favour.",
  "page.returnDetail.shopifyDue.why.bundle_recomputation.less": "After the return fewer items are kept, so fewer of them are free — the difference is charged afterwards.",
  "page.returnDetail.shopifyDue.why.bundle_recomputation.more": "After the return the bundle price was recalculated in the customer's favour.",
  "page.returnDetail.shopifyDue.why.free_item_lapsed.less": "Because the required minimum order value is no longer reached after the return, it is charged afterwards.",
  "page.returnDetail.shopifyDue.why.free_item_lapsed.more": "After the return the free item was checked again in the customer's favour.",
  "page.returnDetail.shopifyDue.why.discount_recomputation.less": "After the return the discount on the kept items was recalculated and is smaller.",
  "page.returnDetail.shopifyDue.why.discount_recomputation.more": "After the return the discount was recalculated in the customer's favour.",
  "page.returnDetail.shopifyDue.why.label_fee.less": "The cost of the return label is deducted from the refund.",
  "page.returnDetail.shopifyDue.why.label_fee.lessAsCredit": "The cost of the return label is deducted from the store credit.",
  "page.returnDetail.shopifyDue.why.label_fee.more": "The cost of the return label is refunded on top.",
  "page.returnDetail.shopifyDue.why.label_fee.moreAsCredit": "The cost of the return label is credited on top.",
  "page.returnDetail.shopifyDue.why.store_credit_bonus.less": "A store credit bonus granted earlier is offset against this refund.",
  "page.returnDetail.shopifyDue.why.store_credit_bonus.lessAsCredit": "A store credit bonus granted earlier is offset against this store credit.",
  "page.returnDetail.shopifyDue.why.store_credit_bonus.more": "The customer takes the refund as store credit and gets a bonus on top.",
  "page.returnDetail.shopifyDue.why.store_credit_bonus.moreAsCredit": "The customer takes the money as store credit and gets a bonus on top.",
  "page.returnDetail.shopifyDue.why.rest": "retuno knows no reason for {cents} — please check it yourself.",
  "page.returnDetail.bonusBooked": "Store credit bonus {amount} booked. Balance afterwards: {balance}.",
  "page.returnDetail.bonusConfirmedByHand": "Store credit bonus {amount}: confirmed as booked by hand (checked in the Shopify admin).",
  "page.returnDetail.bonusPending": "Store credit bonus {amount} is still pending. Reason: {reason} It will be retried automatically.",
  "page.returnDetail.bonusUnresolved": "Store credit bonus {amount}: it is uncertain whether it was booked. Reason: {reason} Nothing is booked again automatically here — please check the customer's store credit balance in the Shopify admin.",
  "page.returnDetail.bonusConfirmHint": "Has the bonus reached the customer? Check the customer's store credit in the Shopify admin. If it has, enter the account ID below and confirm here.",
  "page.returnDetail.bonusAccountLabel": "Account ID from the Shopify admin",
  "page.returnDetail.bonusAccountPlaceholder": "gid://shopify/StoreCreditAccount/…",
  "page.returnDetail.bonusBalanceLabel": "Balance afterwards (optional)",
  "page.returnDetail.bonusConfirmAction": "Confirm as booked",
  "page.returnDetail.bonusReopenAction": "Not booked — try again",
  "page.returnDetail.bonusError.noEvaluation": "There is no evaluation left for this return.",
  "page.returnDetail.bonusError.notOpen": "This bonus is no longer uncertain — someone else has resolved it in the meantime.",
  "page.returnDetail.bonusError.accountMissing": "Without the account ID the confirmation is proof without proof. Please enter it from the Shopify admin.",
  "page.returnDetail.refundBlocked": "This return has ended ({status}) — nothing is paid out. The calculation stays visible so that what applied at the time of the evaluation remains readable.",
  "page.returnDetail.refundRequested": "This return is still a request. Money follows the count at the receiving desk and the release here.",
  "page.returnDetail.payoutBlocked.damageOpen": "Decide on “Damaged” first — send back to the customer, accept after all or issue goodwill store credit. Until then nothing is refunded here.",
  "page.returnDetail.payoutBlocked.damageOpenAsCredit": "Decide on “Damaged” first — send back to the customer, accept after all or issue goodwill store credit. Until then nothing is credited here.",
  "page.returnDetail.payoutBlocked.rejected": "No item was accepted — nothing is refunded here.",
  "page.returnDetail.payoutBlocked.rejectedAsCredit": "No item was accepted — nothing is credited here.",
  "page.returnDetail.error.refundBlocked": "This return has ended — its evaluation is no longer decided. Nothing was changed and nothing was paid out.",
  "page.returnDetail.error.refundRequested": "This request has not been accepted yet — nothing is paid out before it is accepted. Nothing was booked.",
  "page.returnDetail.error.refundFailed": "The refund could not be carried out. The reason is on the evaluation.",
  "page.returnDetail.error.refundFailedAsCredit": "The store credit could not be carried out. The reason is on the evaluation.",
  "page.returnDetail.error.outdated": "This calculation is older than the count in the warehouse — it works with quantities that no longer hold. Nothing was booked. Re-evaluate first, then release.",
  "page.returnDetail.error.reevaluateNotNeeded": "This return is closed and needs no new calculation. Nothing was changed.",
  "page.returnDetail.error.notCounted": "The goods have not been counted yet — before money moves, the intake desk counts every line. Nothing was booked. Count first, then release.",
  "page.returnDetail.error.awaitingMissing": "Not refunded: an item is still missing and the receiving desk is waiting for it. Count it when it arrives — or press “Item not coming – remove from return”, here on the return page or at the receiving desk.",
  "page.returnDetail.error.awaitingMissingAsCredit": "Not credited: an item is still missing and the receiving desk is waiting for it. Count it when it arrives — or press “Item not coming – remove from return”, here on the return page or at the receiving desk.",
  "page.returnDetail.error.decisionPending": "Not released: under “Opened and damaged items” not every item has been decided yet. Decide there first — nothing was changed.",
  "page.returnDetail.awaitingMissing.lead": "An item is still missing — the receiving desk is waiting for it. Refund and exchange go only once:",
  "page.returnDetail.awaitingMissing.leadAsCredit": "An item is still missing — the receiving desk is waiting for it. Store credit and exchange go only once:",
  "page.returnDetail.awaitingMissing.counted": "it arrives and is counted at the receiving desk, or",
  "page.returnDetail.awaitingMissing.writeOff": "“Item not coming – remove from return” is pressed — here with the button below, or at the receiving desk.",
  "page.returnDetail.writtenOff.lead": "The missing item has been removed from the return. Refund and exchange for the other items now go with “Yes, complete” — the evaluation is created fresh.",
  "page.returnDetail.writtenOff.leadAsCredit": "The missing item has been removed from the return. Store credit and exchange for the other items now go with “Yes, complete” — the evaluation is created fresh.",
  "page.returnDetail.labelFee.locked": "The label fee can no longer be changed — the return has already been refunded.",
  "page.returnDetail.labelFee.lockedAsCredit": "The label fee can no longer be changed — the return has already been credited.",
  "page.returnDetail.sendBack.heading": "Return shipment to the customer",
  "page.returnDetail.damaged.heading": "Damaged: send back or accept after all",
  "page.returnDetail.hygieneOpened": "Opened (hygiene item): will be destroyed — no refund, no send-back.",
  "page.returnDetail.hygieneOpenedAsCredit": "Opened (hygiene item): will be destroyed — no store credit, no send-back.",
  "page.returnDetail.damaged.open": "Damaged. Return shipment possible until {until}.",
  "page.returnDetail.damaged.confirm": "The return is then completed without refund, store credit or exchange.",
  "page.returnDetail.damaged.confirmItem": "This item then goes back to the customer without refund, store credit or exchange.",
  "page.returnDetail.damaged.confirmSubmit": "Yes, request return shipment",
  "page.returnDetail.damaged.confirmMissing": "Open “Request return shipment” and confirm there first. Nothing changed.",
  "page.returnDetail.damaged.notCompleted": "Return shipment requested. Completing did not work: {reason}",
  "page.returnDetail.damaged.accept": "Accept after all — complete as requested",
  "page.returnDetail.damaged.acceptSubmit": "Yes, accept after all",
  "page.returnDetail.damaged.acceptConfirmMissing": "Open “Accept after all” and confirm there first. Nothing changed.",
  "page.returnDetail.damaged.expired": "Return shipment no longer possible: the period ended on {since}.",
  "page.returnDetail.damaged.byHand": "The clarification case opened by hand on {date} is resolved with this.",
  "page.returnDetail.damaged.completeConfirm": "The return is completed without any action being taken.",
  "page.returnDetail.damaged.completeByHand": "The clarification case is closed.",
  "page.returnDetail.damaged.blocked": "The return is completed only once the clarification case above is resolved.",
  "page.returnDetail.damaged.complete": "Complete return",
  "page.returnDetail.damaged.completeSubmit": "Yes, complete",
  "page.returnDetail.defectClose.title": "Defect confirmed – close without return shipment",
  "page.returnDetail.defectClose.titleWrongItem": "Wrong item – decide how to proceed",
  "page.returnDetail.defectClose.titleBoth": "Defect and wrong item confirmed – close without return shipment",
  "page.returnDetail.defectClose.sentence": "The customer does not send the defective item back. The replacement goes out to them, and the return is closed – without a refund and without goods received.",
  "page.returnDetail.defectClose.sentenceAsCredit": "The customer does not send the defective item back. The replacement goes out to them, and the return is closed – without a store credit and without goods received.",
  "page.returnDetail.defectClose.sentenceWrongItem": "The customer does not send the wrongly delivered item back. The replacement goes out to them, and the return is closed – without a refund and without goods received.",
  "page.returnDetail.defectClose.sentenceWrongItemAsCredit": "The customer does not send the wrongly delivered item back. The replacement goes out to them, and the return is closed – without a store credit and without goods received.",
  "page.returnDetail.defectClose.sentenceBoth": "The customer does not send the defective or wrongly delivered item back. The replacement goes out to them, and the return is closed – without a refund and without goods received.",
  "page.returnDetail.defectClose.sentenceBothAsCredit": "The customer does not send the defective or wrongly delivered item back. The replacement goes out to them, and the return is closed – without a store credit and without goods received.",
  "page.returnDetail.defectClose.replacement": "Replacement: {article}",
  "page.returnDetail.defectClose.replacementArticle": "{quantity}x {article}",
  "page.returnDetail.defectClose.macroHint": "The “Defect – replacement” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.macroHintMulti": "The “Defect – replacement – several items” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.macroHintWrongItem": "The “Wrong item – no return shipment” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.macroHintMultiWrongItem": "The “Wrong item – replacement – several items” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.submit": "Send replacement and close",
  "page.returnDetail.defectClose.question": "Create the replacement in Shopify and close the return? This cannot be undone.",
  "page.returnDetail.defectClose.done": "Closed. The replacement has been created in Shopify and the return is closed. No money was refunded.",
  "page.returnDetail.defectClose.doneAsCredit": "Closed. The replacement has been created in Shopify and the return is closed. Nothing was credited.",
  "page.returnDetail.defectClose.doneEvaluationOpen": "Closed. The replacement has been created in Shopify and the return is closed. The evaluation was no longer open in the meantime and stayed as it was.",
  "page.returnDetail.defectClose.reason.notAllDefect": "Not every item is set to “Defect confirmed”. Closing without return shipment only works when all items are confirmed.",
  "page.returnDetail.defectClose.reason.notAllConfirmed": "Not every item is confirmed. Closing without return shipment only works when all items are confirmed.",
  "page.returnDetail.defectClose.reason.notExchange": "The customer gets neither a replacement nor store credit. Closing without return shipment only works with a replacement, an exchange or store credit.",
  "page.returnDetail.defectClose.reason.reviewOpen": "A clarification case is open. Clarify it first, then close.",
  "page.returnDetail.defectClose.goodwillWithoutReturn": "Replacement instead of refund, without a return shipment: go to “Exchange instead of refund – no return shipment”",
  "page.returnDetail.defectClose.reason.noEvaluation": "There is no open evaluation. “Evaluate again” first, then close.",
  "page.returnDetail.defectClose.reason.money": "The evaluation results in an amount. Closing without return shipment only works when no money moves.",
  "page.returnDetail.defectClose.error.confirmMissing": "Not closed: the confirmation is missing. Open “Send replacement and close” and confirm there.",
  "page.returnDetail.defectClose.error.changed": "The return has changed in the meantime – reload the page.",
  "page.returnDetail.defectClose.error.inProgress": "Already running – reload the page in a moment.",
  "page.returnDetail.defectClose.error.noDecider": "Closing needs a signed-in person who approves the evaluation.",
  "page.returnDetail.defectClose.error.shopifyRefused": "Shopify refused to close it. Nothing was created.",
  "page.returnDetail.defectClose.error.unclear": "Shopify did not answer. The replacement may already exist – check the order in Shopify before you try again.",
  "page.returnDetail.defectClose.error.acceptUnclear": "Shopify did not answer — whether the return was accepted is unclear; nothing was closed. Check the return in Shopify. If it is still a request there, the button works again after 15 minutes.",
  "page.returnDetail.defectClose.creditSentence": "The customer does not send the defective item back. They receive {amount} as store credit, and the return is closed – without goods received.",
  "page.returnDetail.defectClose.creditSentenceWrongItem": "The customer does not send the wrongly delivered item back. They receive {amount} as store credit, and the return is closed – without goods received.",
  "page.returnDetail.defectClose.creditSentenceBoth": "The customer does not send the defective or wrongly delivered item back. They receive {amount} as store credit, and the return is closed – without goods received.",
  "page.returnDetail.defectClose.creditArticle": "Store credit: {article}",
  "page.returnDetail.defectClose.amountWithBonus": "{amount} (including {bonus} bonus)",
  "page.returnDetail.defectClose.creditHint": "The “Defect – store credit” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.creditHintWrongItem": "The “Wrong item – store credit” template has not been sent to this customer yet.",
  "page.returnDetail.defectClose.creditSubmit": "Book store credit and close",
  "page.returnDetail.defectClose.creditQuestion": "Book {amount} as store credit and close the return? This cannot be undone.",
  "page.returnDetail.defectClose.creditDone": "Closed. {amount} has been booked as store credit, and the return is closed.",
  "page.returnDetail.defectClose.creditDoneClosing": "{amount} has been booked as store credit. Shopify will close the return in a moment – reload the page in a few seconds.",
  "page.returnDetail.defectClose.reason.splitRails": "The money would go partly to the payment method and partly to store credit. Closing without a return shipment only works if it all goes one way.",
  "page.returnDetail.defectClose.reason.exchangePayment": "The replacement costs more than the defective item. Closing without a return shipment is not possible then, because the additional payment would not be collected. Instead: send the return label – the replacement is created once the return has arrived, and the customer gets a payment request – or create the replacement in Shopify by hand and charge the difference.",
  "page.returnDetail.defectClose.reason.exchangePaymentWrongItem": "The replacement costs more than the wrong item. Closing without a return shipment is not possible then, because the additional payment would not be collected. Instead: send the return label – the replacement is created once the return has arrived, and the customer gets a payment request – or create the replacement in Shopify by hand and charge the difference.",
  "page.returnDetail.defectClose.refundSentence": "The customer won't send the defective item back. They get {amount} refunded to their payment method, and the return is closed – without arrival.",
  "page.returnDetail.defectClose.refundSentenceWrongItem": "The customer won't send the wrong item back. They get {amount} refunded to their payment method, and the return is closed – without arrival.",
  "page.returnDetail.defectClose.refundSentenceBoth": "The customer won't send the defective or wrong item back. They get {amount} refunded to their payment method, and the return is closed – without arrival.",
  "page.returnDetail.defectClose.refundArticle": "Refund: {article}",
  "page.returnDetail.defectClose.creditWithReplacement": "The replacement ships in the same step:",
  "page.returnDetail.defectClose.refundSubmit": "Refund and close",
  "page.returnDetail.defectClose.refundQuestion": "Refund {amount} to the payment method and close the return? This cannot be undone.",
  "page.returnDetail.defectClose.refundDone": "Closed. {amount} has been refunded to the payment method, and the return is closed.",
  "page.returnDetail.defectClose.refundDoneClosing": "{amount} has been refunded to the payment method. Shopify is closing the return – reload the page in a few seconds.",
  "page.returnDetail.defectClose.reason.mixed": "The items have different wishes. Closing without return shipment only works when all want a replacement or exchange, or all want store credit.",
  "page.returnDetail.defectClose.reason.payment": "The customer wants a refund to their payment method. That needs the return shipment.",
  "page.returnDetail.defectClose.reason.paymentAsPaidCredit": "The customer wants their money back, for this order as store credit. That needs the return shipment.",
  "page.returnDetail.defectClose.reason.defectWindow": "The defect was reported after the warranty had expired. There is no claim via this route any more – decide in the clarification case.",
  "page.returnDetail.defectClose.reason.partialUnpaired": "Not every confirmed defect has its own replacement. Sending the replacement in advance only works when every defective item has its replacement.",
  "page.returnDetail.defectClose.reason.partialUnpairedWrongItem": "Not every confirmed wrong item has its own replacement. Sending the replacement in advance only works when every wrongly delivered item has its replacement.",
  "page.returnDetail.defectClose.reason.partialPayment": "The replacement costs more than the defective item. With an additional payment the replacement cannot go out in advance: it is created once the return has arrived, the customer then receives a payment request, and the replacement ships as soon as they have paid.",
  "page.returnDetail.defectClose.reason.partialPaymentWrongItem": "The replacement costs more than the wrongly delivered item. With an additional payment the replacement cannot go out in advance: it is created once the return has arrived, the customer then receives a payment request, and the replacement ships as soon as they have paid.",
  "page.returnDetail.defectClose.reason.partialUnpriced": "The evaluation does not show that the replacement costs the same as the returned item. Without that calculation the replacement cannot go out in advance: it is created once the return has arrived.",
  "page.returnDetail.defectClose.partialTitle": "Defect confirmed – send the replacement now or have the whole return sent back",
  "page.returnDetail.defectClose.partialTitleWrongItem": "Wrong item – decide how to proceed",
  "page.returnDetail.wrongItemWays.label.title": "Provide a return label",
  "page.returnDetail.wrongItemWays.label.text": "The customer receives a free return label.",
  "page.returnDetail.wrongItemWays.label.goto": "Go to the return label",
  "page.returnDetail.wrongItemWays.advance.title": "Send the replacement in advance",
  "page.returnDetail.wrongItemWays.advance.text": "The replacement ships right away; the customer sends the wrong item back on their own.",
  "page.returnDetail.wrongItemWays.advance.later": "The replacement ships right away. When the customer sends the wrong item back, put it away at the intake desk like any return.",
  "page.returnDetail.wrongItemWays.advance.submit": "Send replacement now",
  "page.returnDetail.wrongItemWays.advance.question": "Send the replacement now? It ships right away without the customer paying anything. If the customer never sends the wrong item back, the replacement is given away.",
  "page.returnDetail.wrongItemWays.advance.done": "The replacement has been created in Shopify and ships without payment. When the wrong item comes back, put it away at the intake desk like any return.",
  "page.returnDetail.wrongItemWays.advance.reason.money": "“Send replacement now” closes the whole return here without money, but the evaluation results in an amount. That is why the replacement cannot go out in advance: it is created once the return has arrived, and the amount is released with the evaluation.",
  "page.returnDetail.wrongItemWays.advance.reason.cheaper": "The replacement is cheaper than the wrongly delivered item. “Send replacement now” moves no money – but depending on the setting “The wanted variant costs less”, the customer is owed the difference. That is why the replacement cannot go out in advance: it is created once the return has arrived, and the difference is settled according to that setting.",
  "page.returnDetail.wrongItemWays.close.title": "Close without return shipment",
  "page.returnDetail.wrongItemWays.close.text": "The customer may keep the wrong item.",
  "page.returnDetail.wrongItemWays.reject.title": "Reject the return",
  "page.returnDetail.wrongItemWays.reject.text": "It is not a wrong item.",
  "page.returnDetail.wrongItemWays.reject.goto": "Go to cancel",
  "page.returnDetail.defectClose.partialTitleBoth": "Defect and wrong item confirmed – send the replacement now or have the whole return sent back",
  "page.returnDetail.defectClose.partialSentence": "The replacement for the defective item goes out right away. That part is then done; the rest of the return stays open and is processed as usual once the other items arrive.",
  "page.returnDetail.defectClose.partialSentenceWrongItem": "The replacement for the wrongly delivered item goes out right away and the customer keeps the wrong item – that is “Close without return shipment”, for this item only. That part is then done; the rest of the return stays open and is processed as usual once the other items arrive.",
  "page.returnDetail.defectClose.partialSentenceBoth": "The replacement for the defective or wrongly delivered item goes out right away. That part is then done; the rest of the return stays open and is processed as usual once the other items arrive.",
  "page.returnDetail.defectClose.partialSubmit": "Send the replacement now, the rest stays open",
  "page.returnDetail.defectClose.partialSubmitWrongItem": "Send the replacement now – customer keeps the wrong item, the rest stays open",
  "page.returnDetail.defectClose.partialSubmitBoth": "Send the replacement now – customer keeps the items, the rest stays open",
  "page.returnDetail.defectClose.partialQuestion": "Create the replacement in Shopify? The other items stay open in the return. This cannot be undone.",
  "page.returnDetail.defectClose.partialQuestionWrongItem": "Create the replacement in Shopify? The customer keeps the wrong item; it is not expected back. The other items stay open in the return. This cannot be undone.",
  "page.returnDetail.defectClose.partialQuestionBoth": "Create the replacement in Shopify? The customer keeps the defective or wrongly delivered item; it is not expected back. The other items stay open in the return. This cannot be undone.",
  "page.returnDetail.defectClose.partialLabelWay": "Alternatively, you provide a return label: then the whole return is sent back and processed and closed together once it arrives. You send the label with “Send return label”.",
  "page.returnDetail.defectClose.partialReturnWay": "Alternatively, the customer sends the whole return back. It is processed and closed together once it arrives – you do not need to do anything here for that.",
  "page.returnDetail.defectClose.partialDone": "The replacement has been created in Shopify. The other items stay open in the return and are processed as usual once they arrive. No money was refunded.",
  "page.returnDetail.defectClose.partialDoneAsCredit": "The replacement has been created in Shopify. The other items stay open in the return and are processed as usual once they arrive. Nothing was credited.",
  "page.returnDetail.defectClose.error.creditConfirmMissing": "Not closed: the confirmation is missing. Open “Book store credit and close” and confirm there.",
  "page.returnDetail.defectClose.error.creditRefused": "Shopify refused the booking. No store credit was booked, and the return is still open.",
  "page.returnDetail.defectClose.error.creditUnclear": "Shopify did not answer. The store credit may already be booked – check the order in Shopify before you try again.",
  "page.returnDetail.defectClose.error.creditNotClosed": "The store credit is booked, but Shopify did not close the return. Check it in Shopify.",
  "page.returnDetail.defectClose.error.creditPartial": "Shopify booked only part of the store credit. Approve the rest via the evaluation.",
  "page.returnDetail.defectClose.error.alreadyRefunded": "Shopify already shows money refunded on this return or order. retuno does not book a second time – check the order in Shopify.",
  "page.returnDetail.defectClose.error.alreadyRefundedAsCredit": "Shopify already shows money credited on this return or order. retuno does not book a second time – check the order in Shopify.",
  "page.returnDetail.defectClose.error.noStoreCredit": "The customer wants store credit, but the shop uses classic customer accounts – there is no store credit there. Closing without return shipment does not work this way.",
  "page.returnDetail.damaged.completePending": "Completing …",
  "page.returnDetail.damaged.actions.refund": "The return is completed as the customer requested it: refund.",
  "page.returnDetail.damaged.actions.refundAsPaidCredit": "The return is completed as the customer requested it: store credit.",
  "page.returnDetail.damaged.actions.storeCredit": "The return is completed as the customer requested it: store credit.",
  "page.returnDetail.damaged.actions.exchange": "The return is completed as the customer requested it: exchange.",
  "page.returnDetail.damaged.actions.refundStoreCredit": "The return is completed as the customer requested it: refund and store credit.",
  "page.returnDetail.damaged.actions.refundStoreCreditAsPaidCredit": "The return is completed as the customer requested it: store credit.",
  "page.returnDetail.damaged.actions.refundExchange": "The return is completed as the customer requested it: refund and exchange.",
  "page.returnDetail.damaged.actions.refundExchangeAsPaidCredit": "The return is completed as the customer requested it: store credit and exchange.",
  "page.returnDetail.damaged.actions.storeCreditExchange": "The return is completed as the customer requested it: store credit and exchange.",
  "page.returnDetail.damaged.actions.all": "The return is completed as the customer requested it: refund, store credit and exchange.",
  "page.returnDetail.damaged.actions.allAsPaidCredit": "The return is completed as the customer requested it: store credit and exchange.",
  "page.returnDetail.damaged.notStocked.one": "The item does not go back into stock.",
  "page.returnDetail.damaged.notStocked.other": "The {count} items do not go back into stock.",
  "page.returnDetail.damaged.amountRefund": "The refund amount is calculated in the process.",
  "page.returnDetail.damaged.amountRefundAsCredit": "The store credit amount is calculated in the process.",
  "page.returnDetail.damaged.amountStoreCredit": "The store credit amount is calculated in the process.",
  "page.returnDetail.damaged.acceptLater.one": "The item is accepted as the customer requested it and does not go back into stock. The return is completed after the last decision.",
  "page.returnDetail.damaged.acceptLater.other": "The {count} items are accepted as the customer requested them and do not go back into stock. The return is completed after the last decision.",
  "page.returnDetail.damaged.acceptOnly.one": "The item is accepted as the customer requested it and does not go back into stock.",
  "page.returnDetail.damaged.acceptOnly.other": "The {count} items are accepted as the customer requested them and do not go back into stock.",
  "page.returnDetail.damaged.sendBackCompletesMixed": "This item goes back to the customer without refund, store credit or exchange. The return is completed with this — the other items as requested.",
  "page.returnDetail.damaged.acceptedLead": "Accepted after all.",
  "page.returnDetail.damaged.sentBackLead": "Return shipment requested.",
  "page.returnDetail.damaged.done": "The return is completed.",
  "page.returnDetail.damaged.refundedPayment": "Refunded: {amount} to the payment method.",
  "page.returnDetail.damaged.refundedPaymentAsPaidCredit": "Credited as store credit: {amount}.",
  "page.returnDetail.damaged.refundedStoreCredit": "Credited as store credit: {amount}.",
  "page.returnDetail.damaged.noMoney": "No money was refunded.",
  "page.returnDetail.damaged.noMoneyAsCredit": "Nothing was credited.",
  "page.returnDetail.damaged.exchangeReleased.one": "The exchange for {count} item is triggered.",
  "page.returnDetail.damaged.exchangeReleased.other": "The exchange for {count} items is triggered.",
  "page.returnDetail.damaged.awaitingPayment": "Shopify holds the exchange shipment until the customer pays the difference.",
  "page.returnDetail.damaged.partial": "Completed. {booked} of {wanted} were refunded; you can release the rest on the return.",
  "page.returnDetail.damaged.partialAsCredit": "Completed. {booked} of {wanted} were credited; you can release the rest on the return.",
  "page.returnDetail.damaged.moneyFailed": "Completed, but Shopify refused the refund. You can release it again on the return.",
  "page.returnDetail.damaged.moneyFailedAsCredit": "Completed, but Shopify refused the store credit. You can release it again on the return.",
  "page.returnDetail.damaged.despiteErrors": "Shopify reported an error on the first attempt and refunded anyway. The return was then completed without another refund.",
  "page.returnDetail.damaged.despiteErrorsAsCredit": "Shopify reported an error on the first attempt and credited anyway. The return was then completed without another store credit.",
  "page.returnDetail.damaged.acceptNotCompleted": "Accepted after all. Completing did not work: {reason}",
  "page.returnDetail.damaged.acceptedLater": "Accepted after all. The return is completed after the last decision.",
  "page.returnDetail.damaged.sendBackLater": "Return shipment requested. The return is completed after the last decision.",
  "page.returnDetail.damaged.skipped.no_evaluation": "Completed without a refund: the rules could not be evaluated. The return shows why.",
  "page.returnDetail.damaged.skipped.no_evaluationAsCredit": "Completed without a store credit: the rules could not be evaluated. The return shows why.",
  "page.returnDetail.damaged.skipped.clarify": "Completed without a refund: the rules could not decide — the return is a clarification case and waits for a person.",
  "page.returnDetail.damaged.skipped.clarifyAsCredit": "Completed without a store credit: the rules could not decide — the return is a clarification case and waits for a person.",
  "page.returnDetail.damaged.skipped.already_executed": "Completed. The refund had already been booked earlier — nothing was booked twice.",
  "page.returnDetail.damaged.skipped.already_executedAsCredit": "Completed. The store credit had already been booked earlier — nothing was booked twice.",
  "page.returnDetail.damaged.skipped.already_refunded_at_shopify": "Completed without a refund: since this return was requested, Shopify holds a refund with money – on the return or on the order without a link to any return. retuno does not book a second one.",
  "page.returnDetail.damaged.skipped.already_refunded_at_shopifyAsCredit": "Completed without a store credit: since this return was requested, Shopify holds a refund with money – on the return or on the order without a link to any return. retuno does not book a second one.",
  "page.returnDetail.damaged.skipped.in_progress": "Completed without a refund: a release is already in progress on the return.",
  "page.returnDetail.damaged.skipped.in_progressAsCredit": "Completed without a store credit: a release is already in progress on the return.",
  "page.returnDetail.damaged.skipped.zero_amount": "Completed. There is nothing to refund (0.00).",
  "page.returnDetail.damaged.skipped.zero_amountAsCredit": "Completed. There is nothing to credit (0.00).",
  "page.returnDetail.damaged.skipped.store_credit_unavailable": "Completed without a refund: the customer asked for store credit, but this shop runs classic customer accounts. Release it on the return once that is settled.",
  "page.returnDetail.damaged.skipped.store_credit_unavailableAsCredit": "Completed without a store credit: the customer asked for store credit, but this shop runs classic customer accounts. Release it on the return once that is settled.",
  "page.returnDetail.damaged.skipped.no_refundable_transaction": "Completed without a refund: the order carries no successful payment to refund against. Release it on the return once that is settled.",
  "page.returnDetail.damaged.skipped.no_decider": "Completed without a refund: this session carries no user who could sign the release.",
  "page.returnDetail.damaged.skipped.no_deciderAsCredit": "Completed without a store credit: this session carries no user who could sign the release.",
  "page.returnDetail.damaged.skipped.mixed_rails": "Completed without a refund: this return pays partly to the payment method and partly as store credit. The approval on the return books that, not completing it.",
  "page.returnDetail.damaged.skipped.not_sent": "Completed without a refund: retuno did not send the refund to Shopify. The return page shows what happens next.",
  "page.returnDetail.damaged.skipped.not_sentAsCredit": "Completed without a store credit: retuno did not send the store credit to Shopify. The return page shows what happens next.",
  "page.returnDetail.damaged.skipped.awaiting_missing": "Completed without a refund: an item is still missing. Refund and exchange follow once it is counted or removed from the return.",
  "page.returnDetail.damaged.skipped.awaiting_missingAsCredit": "Completed without a store credit: an item is still missing. Store credit and exchange follow once it is counted or removed from the return.",
  "page.returnDetail.damaged.skipped.clarification_open": "Completed without a refund: the return is still a clarification case — decide about the money below in the “Refund calculation” card.",
  "page.returnDetail.damaged.skipped.clarification_openAsCredit": "Completed without a store credit: the return is still a clarification case — decide about the money below in the “Store credit calculation” card.",
  "page.returnDetail.damaged.completedLater": "The return is completed — without refund, store credit or exchange.",
  "page.returnDetail.damaged.completeFailed": "Completing did not work: {reason}",
  "page.returnDetail.damaged.completeConfirmMissing": "Open “Complete return” and confirm there first. Nothing changed.",
  "page.returnDetail.damaged.completeNotOffered": "This return can no longer be completed here. Nothing changed.",
  "page.returnDetail.damaged.acceptNote": "Why accepted after all? (optional)",
  "page.returnDetail.damaged.acceptNotePlaceholder": "e.g. refunded as a goodwill gesture",
  "page.returnDetail.damaged.acceptNotePlaceholderAsCredit": "e.g. credited as store credit as a goodwill gesture",
  "page.returnDetail.damaged.goodwill": "Issue goodwill store credit",
  "page.returnDetail.damaged.goodwillSubmit": "Yes, issue goodwill store credit",
  "page.returnDetail.damaged.goodwillLead": "The item is accepted and does not go back into stock. The customer receives the price paid for the item as store credit — without the store credit bonus. The label fee follows your rules.",
  "page.returnDetail.damaged.goodwillCompletes": "This completes the return.",
  "page.returnDetail.damaged.goodwillCompletesMixed": "This completes the return — the other items as requested.",
  "page.returnDetail.damaged.goodwillLater": "The return is completed after the last decision.",
  "page.returnDetail.damaged.goodwillConfirmMissing": "Open “Issue goodwill store credit” and confirm there first. Nothing changed.",
  "page.returnDetail.damaged.goodwillDoneLead": "Accepted as goodwill store credit.",
  "page.returnDetail.damaged.goodwillDoneLater": "Accepted as goodwill store credit. The return is completed after the last decision.",
  "page.returnDetail.damaged.goodwillNotCompleted": "Accepted as goodwill store credit. Completing did not work: {reason}",
  "page.returnDetail.damaged.goodwillNotChangeable": "Goodwill store credit is no longer possible here: the return is no longer open. Nothing changed.",
  "page.returnDetail.damaged.goodwillSettled": "Goodwill store credit is no longer possible here: money has already been paid on this return, and an exchange can no longer be converted into store credit after that. Nothing changed.",
  "page.returnDetail.damaged.goodwillInFlight": "Goodwill store credit is not possible right now: a refund for this return is still being booked. Try again once it is booked. Nothing changed.",
  "page.returnDetail.damaged.goodwillAlreadyPaid": "Goodwill store credit is not possible here: money has already been paid for this item. Nothing changed.",
  "page.returnDetail.damaged.goodwillExchangeUnmapped": "The exchange of this item cannot be matched to an exchange line. Nothing changed.",
  "page.returnDetail.damaged.dispose": "Complete without action",
  "page.returnDetail.damaged.disposeSubmit": "Yes, complete without action",
  "page.returnDetail.damaged.disposeLead": "The item does not go back to the customer and not into stock. The customer gets no refund, no store credit and no exchange for it. The item appears in the next Friday list under “Can be disposed of”.",
  "page.returnDetail.damaged.disposedLead": "Can be disposed of.",
  "page.returnDetail.damaged.disposedLater": "Can be disposed of. Completed after the last decision.",
  "page.returnDetail.damaged.disposeNotCompleted": "Can be disposed of. Completing did not work: {reason}",
  "page.returnDetail.damaged.disposeConfirmMissing": "Open “Complete without action” and confirm there first. Nothing changed.",
  "page.returnDetail.damaged.disposeNotChangeable": "“Complete without action” is no longer possible here: the return is no longer open. Nothing changed.",
  "page.returnDetail.damaged.disposeSendBack": "The return shipment has already been requested — untick “Request return shipment” first. Nothing changed.",
  "page.returnDetail.sendBack.afterStoring": "Sending back is possible after storing.",
  "page.returnDetail.sendBack.error.exchangeNotRemoved": "Marked as sent back. Shopify could not remove the exchange item from the return — please check in Shopify that it is not shipped.",
  "page.returnDetail.sendBack.error.notClosedAtShopify": "Shopify did not let us close the return. It is closed in retuno; please check it in Shopify.",
  "page.returnDetail.sendBack.checkbox": "Request return shipment",
  "page.returnDetail.sendBack.hint": "With the tick, retuno knows that this item that was not accepted goes back to the customer. Until it is marked as sent back, the tick can be removed again.",
  "page.returnDetail.sendBack.save": "Save",
  "page.returnDetail.sendBack.open": "Not accepted. Return shipment possible until {until}.",
  "page.returnDetail.sendBack.requested": "Requested on {when} by {by}.",
  "page.returnDetail.sendBack.markSent": "Mark as sent back",
  "page.returnDetail.sendBack.markSentPending": "Marking …",
  "page.returnDetail.sendBack.sent": "Sent back on {date} (marked by {by}).",
  "page.returnDetail.sendBack.expired": "Return shipment no longer possible: the period after storing ended on {since}.",
  "page.returnDetail.sendBack.saved": "Saved.",
  "page.returnDetail.sendBack.error.notOffered": "There is no return shipment for this item: nothing is “not accepted”, or the return is not stored yet.",
  "page.returnDetail.sendBack.error.expired": "Return shipment no longer possible: the period after storing is over.",
  "page.returnDetail.sendBack.error.unchanged": "Nothing changed.",
  "page.returnDetail.sendBack.error.sent": "Already marked as sent back. This can no longer be changed.",
  "page.returnDetail.sendBack.label.created": "DHL label {number} for the return shipment, bought on {when}.",
  "page.returnDetail.sendBack.label.pdf": "Open PDF",
  "page.returnDetail.sendBack.label.sandbox": "Test label (DHL sandbox)",
  "page.returnDetail.sendBack.label.failed": "No DHL label for the return shipment (run of {when}): {reason} The next Friday run tries again.",
  "page.returnDetail.sendBack.label.unclear": "DHL label for the return shipment unclear (run of {when}): {reason}",
  "page.returnDetail.sendBack.label.release": "No shipment at DHL: buy again in the next run",
  "page.returnDetail.sendBack.label.released": "Released. The next Friday run buys the label again.",
  "page.returnDetail.sendBack.label.error.notUnclear": "There is no unclear label purchase open here any more.",
  "page.returnDetail.strayFee.heading": "Stray item: storage fee",
  "page.returnDetail.strayFee.sent.one": "Stray-item message sent on {date} — {count} day ago.",
  "page.returnDetail.strayFee.sent.other": "Stray-item message sent on {date} — {count} days ago.",
  "page.returnDetail.strayFee.sentOn": "Stray-item message sent on {date}.",
  "page.returnDetail.strayFee.ended.one": "Sent back on {date} — the storage fee counts until then: {count} day.",
  "page.returnDetail.strayFee.ended.other": "Sent back on {date} — the storage fee counts until then: {count} days.",
  "page.returnDetail.strayFee.first": "The first message went out on {date}.",
  "page.returnDetail.strayFee.periodRunning.one": "The {count}-day period ends on {date}. Until then only the flat fee applies.",
  "page.returnDetail.strayFee.periodRunning.other": "The {count}-day period ends on {date}. Until then only the flat fee applies.",
  "page.returnDetail.strayFee.periodEnded.one": "The {count}-day period ended on {date}.",
  "page.returnDetail.strayFee.periodEnded.other": "The {count}-day period ended on {date}.",
  "page.returnDetail.strayFee.suggestion.one": "Suggestion: {total} — {flat} flat fee plus {count} day × {daily}.",
  "page.returnDetail.strayFee.suggestion.other": "Suggestion: {total} — {flat} flat fee plus {count} days × {daily}.",
  "page.returnDetail.strayFee.suggestionDaily.one": "Suggestion: {total} — {count} day × {daily}.",
  "page.returnDetail.strayFee.suggestionDaily.other": "Suggestion: {total} — {count} days × {daily}.",
  "page.returnDetail.strayFee.suggestionFlat": "Suggestion: flat fee {flat}.",
  "page.returnDetail.strayFee.suggestionNone": "Suggestion: nothing yet — the period is still running.",
  "page.returnDetail.strayFee.notBooked": "retuno does not book this. You decide and book the amount yourselves.",
  "page.returnDetail.strayFee.notSent": "The stray-item message has not been delivered yet. The period only starts once it is out.",
  "page.returnDetail.strayFee.note": "Note the amount",
  "page.returnDetail.strayFee.noted": "Noted on {date}: {amount} (day {day}).",
  "page.returnDetail.strayFee.notedDone": "Amount noted. It is now in the history.",
  "page.returnDetail.strayFee.error.off": "No flat fee and no storage fee are set for stray items.",
  "page.returnDetail.strayFee.error.notSent": "No stray-item message has gone out yet, so the period has not started.",
  "page.returnDetail.straySendBack.heading": "Stray item – send back with the customer's label",
  "page.returnDetail.straySendBack.intro": "If the customer sends their own shipping label for the foreign goods, upload it here. It goes out on Fridays in a separate email to the Friday list address.",
  "page.returnDetail.straySendBack.introListOff": "The Friday list is off (Settings → Warehouse) — the label stays with the return, no email goes out.",
  "page.returnDetail.straySendBack.field": "Customer's label (PDF, JPG or PNG, at most {size})",
  "page.returnDetail.straySendBack.add": "Upload label",
  "page.returnDetail.straySendBack.replace": "Replace label",
  "page.returnDetail.straySendBack.open": "Label uploaded on {date} by {by}.",
  "page.returnDetail.straySendBack.openLabel": "Open label",
  "page.returnDetail.straySendBack.markSent": "Mark as sent back",
  "page.returnDetail.straySendBack.clear": "Cancel send-back",
  "page.returnDetail.straySendBack.sent": "Sent back on {date} by {by}.",
  "page.returnDetail.straySendBack.replaced": "Label replaced.",
  "page.returnDetail.straySendBack.cleared": "Send-back cancelled.",
  "page.returnDetail.straySendBack.error.notStray": "No stray item is recorded on this return. Nothing was saved.",
  "page.returnDetail.straySendBack.error.sent": "The stray item is already marked as sent back. Nothing was changed.",
  "page.returnDetail.straySendBack.error.tooLarge": "The file is too large. Choose a smaller file — the limit is shown at the field.",
  "page.returnDetail.straySendBack.error.empty": "The file arrived empty or damaged. Choose it again.",
  "page.returnDetail.straySendBack.error.unsupported": "retuno doesn't accept this file format. Allowed are PDF, JPG and PNG.",
  "page.returnDetail.straySendBack.error.none": "No customer label is stored on this return. Nothing was changed.",
  "page.returnDetail.endNotReceived.open": "End – item not received",
  "page.returnDetail.endNotReceived.confirm": "The registered item is not coming. The return is ended in retuno and Shopify — no refund, no exchange. The item can't be registered for return again afterwards.",
  "page.returnDetail.endNotReceived.confirmAsCredit": "The registered item is not coming. The return is ended in retuno and Shopify — no store credit, no exchange. The item can't be registered for return again afterwards.",
  "page.returnDetail.endNotReceived.submit": "Yes, end it",
  "page.returnDetail.endNotReceived.done": "Ended – item not received. No refund, no exchange.",
  "page.returnDetail.endNotReceived.doneAsCredit": "Ended – item not received. No store credit, no exchange.",
  "page.returnDetail.endNotReceived.error.notEndable": "Only an open return can be ended. Nothing was changed.",
  "page.returnDetail.endNotReceived.error.moneyMoved": "Money has already been paid out on this return — it can't be ended as “not received”. Nothing was changed.",
  "page.returnDetail.endNotReceived.error.goodsArrived": "Goods have already been counted as arrived here — this isn't “not received”. Nothing was changed.",
  "page.returnDetail.endNotReceived.error.shopifyRefused": "Shopify refused to close the return. Nothing was changed.",
  "page.returnDetail.endNotReceived.error.inProgress": "Already running — a second click doesn’t end the return again.",
  "page.returnDetail.endNotReceived.error.unclear": "Shopify didn’t answer — it’s unclear whether the return was closed. Check the return in Shopify. If it’s still open there, the button works again after 15 minutes.",
  "page.returnDetail.endNotReceived.pending": "Ending …",
  "page.returnDetail.error.labelNotAccepted": "There is no label for this return: at least one item is already stored and “not accepted”.",
  "page.returnDetail.error.closedInRetuno": "This return is closed in retuno: items “not accepted”, no open evaluation. A new calculation is not intended here.",
  "page.returnDetail.error.allRejected": "Every item of this return is “not accepted”. No money is paid for it, so there is nothing to release. If the count is wrong, reset it at the intake desk and count again.",
  "page.returnDetail.error.clarificationConfirm": "There is an open clarification on this return. Resolve it first — or choose “Refund despite clarification” explicitly.",
  "page.returnDetail.error.clarificationConfirmAsCredit": "There is an open clarification on this return. Resolve it first — or choose “Credit despite clarification” explicitly.",
  "page.returnDetail.error.damagedUndecided": "Decide on “Damaged” first — send it back to the customer, accept it after all or issue goodwill store credit. Until then the clarification stays open. Nothing changed.",
  "page.returnDetail.error.packSplitUndecided": "Decide on the bundle exchange above first. Nothing changed.",
  "page.returnDetail.error.openedExchangeUndecided": "First decide on exchange or refund of the opened item – in the “Opened hygiene item” card on this page. Nothing changed.",
  "page.returnDetail.packSplitExchange.refund": "Convert to refund",
  "page.returnDetail.packSplitExchange.refundHint": "The exchange is dropped. The bundle is refunded minus the opened pairs at the single price ({single} per pair).",
  "page.returnDetail.packSplitExchange.refundHintAsPaidCredit": "The exchange is dropped. The bundle is credited as store credit minus the opened pairs at the single price ({single} per pair).",
  "page.returnDetail.packSplitExchange.refundSubmit": "Yes, convert to refund",
  "page.returnDetail.packSplitExchange.storeCredit": "Convert to store credit",
  "page.returnDetail.packSplitExchange.storeCreditHint": "The exchange is dropped. The bundle is credited as store credit minus the opened pairs at the single price ({single} per pair), plus the store credit bonus, if one applies.",
  "page.returnDetail.packSplitExchange.storeCreditSubmit": "Yes, convert to store credit",
  "page.returnDetail.packSplitExchange.declined": "Decline exchange – no refund",
  "page.returnDetail.packSplitExchange.declinedConfirm": "The customer gets neither an exchange nor a refund for this bundle.",
  "page.returnDetail.packSplitExchange.declinedSubmit": "Yes, decline exchange",
  "page.returnDetail.packSplitExchange.exchange": "Exchange anyway",
  "page.returnDetail.packSplitExchange.exchangeConfirm": "The customer gets the bundle exchanged, without deduction.",
  "page.returnDetail.packSplitExchange.exchangeSubmit": "Yes, exchange",
  "page.returnDetail.packSplitExchange.confirmMissing": "Open “{button}” and confirm there first. Nothing changed.",
  "page.returnDetail.packSplitExchange.decided": "Decided: {decision} · {when} · {by}.",
  "page.returnDetail.packSplitExchange.closes.refund": "This completes the return right here, and the amount is refunded.",
  "page.returnDetail.packSplitExchange.closes.refundAsPaidCredit": "This completes the return right here, and the amount is credited as store credit.",
  "page.returnDetail.packSplitExchange.closes.storeCredit": "This completes the return right here, and the amount is credited as store credit.",
  "page.returnDetail.packSplitExchange.closes.declined": "This completes the return right here.",
  "page.returnDetail.packSplitExchange.closes.exchange": "This completes the return right here, and the exchange is triggered.",
  "page.returnDetail.packSplitExchange.closesLater.decision": "The return is completed after the last decision.",
  "page.returnDetail.packSplitExchange.closesLater.counting": "The return is completed once everything is counted at the intake desk – then here with “Complete return” or at the intake desk.",
  "page.returnDetail.packSplitExchange.blocked": "The return is completed only once the clarification case on this page is resolved.",
  "page.returnDetail.packSplitExchange.completeConfirm": "The return is completed now, as decided for the bundle. Only then is money paid or the exchange triggered.",
  "page.returnDetail.packSplitExchange.notCompleted": "Decided. Completing did not work: {reason}",
  "page.returnDetail.openedExchange.refund": "Convert to refund",
  "page.returnDetail.openedExchange.refundHint": "The exchange is dropped. The full price is refunded, without a deduction for opening.",
  "page.returnDetail.openedExchange.refundHintAsPaidCredit": "The exchange is dropped. The full price is credited as store credit, without a deduction for opening.",
  "page.returnDetail.openedExchange.refundConfirm": "The full price is refunded{amount}.",
  "page.returnDetail.openedExchange.refundConfirmAsPaidCredit": "The full price is credited as store credit{amount}.",
  "page.returnDetail.openedExchange.refundConfirmLabel": "The full price is refunded{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmLabelAsPaidCredit": "The full price is credited as store credit{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundSubmit": "Yes, convert to refund",
  "page.returnDetail.openedExchange.storeCredit": "Convert to store credit",
  "page.returnDetail.openedExchange.storeCreditSubmit": "Yes, convert to store credit",
  "page.returnDetail.openedExchange.storeCreditHint": "The exchange is dropped. The full price is credited as store credit, without a deduction for opening, plus the store credit bonus, if one applies.",
  "page.returnDetail.openedExchange.storeCreditHintCode": "The exchange is dropped. The credit has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules.",
  "page.returnDetail.openedExchange.storeCreditHintUnits": "The exchange is dropped for the opened items. The full price is credited as store credit, without a deduction for opening, plus the store credit bonus, if one applies. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.storeCreditHintUnitsCode": "The exchange is dropped for the opened items. The credit has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.storeCreditConfirmLabel": "We calculate the amount as for a refund and credit it as store credit, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.storeCreditConfirmUnits.one": "Convert 1 item to store credit? We calculate the amount as for a refund and credit it as store credit.",
  "page.returnDetail.openedExchange.storeCreditConfirmUnits.other": "Convert {count} items to store credit? We calculate the amount as for a refund and credit it as store credit.",
  "page.returnDetail.openedExchange.storeCreditConfirmLabelUnits.one": "Convert 1 item to store credit? We calculate the amount as for a refund and credit it as store credit, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.storeCreditConfirmLabelUnits.other": "Convert {count} items to store credit? We calculate the amount as for a refund and credit it as store credit, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.declined": "Decline exchange – no refund",
  "page.returnDetail.openedExchange.declinedConfirm": "The customer gets neither an exchange nor a refund for this item.",
  "page.returnDetail.openedExchange.declinedSubmit": "Yes, decline exchange",
  "page.returnDetail.openedExchange.exchange": "Exchange anyway",
  "page.returnDetail.openedExchange.exchangeConfirm": "The customer gets the exchange item.",
  "page.returnDetail.openedExchange.exchangeSubmit": "Yes, exchange",
  "page.returnDetail.openedExchange.error.quantityMismatch": "Not decided: the number of exchange items does not match the number of returned items. Please resolve it through a clarification case. Nothing changed.",
  "page.returnDetail.openedExchange.refundConfirmUnits.one": "Convert 1 item to a refund? The full price is refunded{amount}.",
  "page.returnDetail.openedExchange.refundConfirmUnitsAsPaidCredit.one": "Convert 1 item to a refund? The full price is credited as store credit{amount}.",
  "page.returnDetail.openedExchange.refundConfirmUnits.other": "Convert {count} items to a refund? The full price is refunded{amount}.",
  "page.returnDetail.openedExchange.refundConfirmUnitsAsPaidCredit.other": "Convert {count} items to a refund? The full price is credited as store credit{amount}.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnits.one": "Convert 1 item to a refund? The full price is refunded{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnitsAsPaidCredit.one": "Convert 1 item to a refund? The full price is credited as store credit{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnits.other": "Convert {count} items to a refund? The full price is refunded{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnitsAsPaidCredit.other": "Convert {count} items to a refund? The full price is credited as store credit{amount}, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.declinedConfirmUnits.one": "Decline the exchange for 1 opened item? The customer gets neither an exchange nor a refund for it.",
  "page.returnDetail.openedExchange.declinedConfirmUnits.other": "Decline the exchange for {count} opened items? The customer gets neither an exchange nor a refund for them.",
  "page.returnDetail.openedExchange.exchangeConfirmUnits.one": "Exchange despite 1 opened item? The customer gets all exchange items.",
  "page.returnDetail.openedExchange.exchangeConfirmUnits.other": "Exchange despite {count} opened items? The customer gets all exchange items.",
  "page.returnDetail.openedExchange.refundHintUnits": "The exchange is dropped for the opened items. The full price is refunded, without a deduction for opening. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.refundHintUnitsAsPaidCredit": "The exchange is dropped for the opened items. The full price is credited as store credit, without a deduction for opening. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.refundHintCode": "The exchange is dropped. The refund has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid.",
  "page.returnDetail.openedExchange.refundHintCodeAsPaidCredit": "The exchange is dropped. The store credit has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid.",
  "page.returnDetail.openedExchange.refundHintUnitsCode": "The exchange is dropped for the opened items. The refund has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.refundHintUnitsCodeAsPaidCredit": "The exchange is dropped for the opened items. The store credit has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid. The sealed ones are exchanged.",
  "page.returnDetail.openedExchange.refundConfirmLabelCode": "We calculate the amount by the usual discount rules, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmUnitsCode.one": "Convert 1 item to a refund? We calculate the amount by the usual discount rules.",
  "page.returnDetail.openedExchange.refundConfirmUnitsCode.other": "Convert {count} items to a refund? We calculate the amount by the usual discount rules.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnitsCode.one": "Convert 1 item to a refund? We calculate the amount by the usual discount rules, less the label fee, if one applies.",
  "page.returnDetail.openedExchange.refundConfirmLabelUnitsCode.other": "Convert {count} items to a refund? We calculate the amount by the usual discount rules, less the label fee, if one applies.",
  "page.returnDetail.decisions.heading": "Opened and damaged items: decide per item",
  "page.returnDetail.hygieneRefund.refund.deduct": "Refund minus the opened pairs",
  "page.returnDetail.hygieneRefund.refund.deductUnits": "Refund minus the opened pieces",
  "page.returnDetail.hygieneRefund.refund.deductHint": "The item is refunded minus the opened pairs at the single price ({single} per pair).",
  "page.returnDetail.hygieneRefund.refund.deductHintUnits": "The item is refunded minus the opened pieces at the single price ({single} per piece).",
  "page.returnDetail.hygieneRefund.refund.deductConfirm": "The opened pairs are deducted at the single price.",
  "page.returnDetail.hygieneRefund.refund.deductConfirmUnits": "The opened pieces are deducted at the single price.",
  "page.returnDetail.hygieneRefund.refund.deductSubmit": "Yes, refund with deduction",
  "page.returnDetail.hygieneRefund.refund.none": "No refund for this item",
  "page.returnDetail.hygieneRefund.refund.noneHint": "The customer gets no refund for this item.",
  "page.returnDetail.hygieneRefund.refund.noneHintBundle": "The customer gets no refund for this item. The sealed pairs go back into stock.",
  "page.returnDetail.hygieneRefund.refund.noneHintUnits": "The customer gets no refund for this item. The sealed pieces go back into stock.",
  "page.returnDetail.hygieneRefund.refund.noneSubmit": "Yes, no refund",
  "page.returnDetail.hygieneRefund.refund.full": "Full refund anyway",
  "page.returnDetail.hygieneRefund.refund.fullHint": "The full price is refunded, with no deduction for opening.",
  "page.returnDetail.hygieneRefund.refund.fullHintCode": "The refund has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid.",
  "page.returnDetail.hygieneRefund.refund.fullSubmit": "Yes, refund in full",
  "page.returnDetail.hygieneRefund.refund.goodwillHint": "The customer receives the price paid for the whole item as store credit — with no deduction for opening and without the store credit bonus. The label fee follows your rules.",
  "page.returnDetail.hygieneRefund.refund.goodwillHintCode": "The customer receives the item as store credit — with no deduction for opening and without the store credit bonus. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid. The label fee follows your rules.",
  "page.returnDetail.hygieneRefund.credit.deduct": "Store credit minus the opened pairs",
  "page.returnDetail.hygieneRefund.credit.deductUnits": "Store credit minus the opened pieces",
  "page.returnDetail.hygieneRefund.credit.deductHint": "The item is credited minus the opened pairs at the single price ({single} per pair).",
  "page.returnDetail.hygieneRefund.credit.deductHintUnits": "The item is credited minus the opened pieces at the single price ({single} per piece).",
  "page.returnDetail.hygieneRefund.credit.deductConfirm": "The opened pairs are deducted at the single price.",
  "page.returnDetail.hygieneRefund.credit.deductConfirmUnits": "The opened pieces are deducted at the single price.",
  "page.returnDetail.hygieneRefund.credit.deductSubmit": "Yes, credit with deduction",
  "page.returnDetail.hygieneRefund.credit.none": "No store credit for this item",
  "page.returnDetail.hygieneRefund.credit.noneHint": "The customer gets no store credit for this item.",
  "page.returnDetail.hygieneRefund.credit.noneHintBundle": "The customer gets no store credit for this item. The sealed pairs go back into stock.",
  "page.returnDetail.hygieneRefund.credit.noneHintUnits": "The customer gets no store credit for this item. The sealed pieces go back into stock.",
  "page.returnDetail.hygieneRefund.credit.noneSubmit": "Yes, no store credit",
  "page.returnDetail.hygieneRefund.credit.full": "Full store credit anyway",
  "page.returnDetail.hygieneRefund.credit.fullHint": "The full price is credited, with no deduction for opening.",
  "page.returnDetail.hygieneRefund.credit.fullHintCode": "The store credit has no deduction for opening. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid.",
  "page.returnDetail.hygieneRefund.credit.fullSubmit": "Yes, credit in full",
  "page.returnDetail.hygieneRefund.credit.goodwillHint": "The customer receives the price paid for the whole item as store credit — with no deduction for opening, but unlike “Full store credit anyway” without the store credit bonus. The label fee follows your rules.",
  "page.returnDetail.hygieneRefund.credit.goodwillHintCode": "The customer receives the item as store credit — with no deduction for opening, but unlike “Full store credit anyway” without the store credit bonus. This item carries a quantity discount or promo code – we calculate the amount by the usual discount rules, and it can be below the price paid. The label fee follows your rules.",
  "page.returnDetail.hygieneRefund.closes.credit": "The return is completed right here, and the store credit is issued.",
  "page.returnDetail.hygieneRefund.error.notChangeable": "This item can no longer be decided here: the return is already completed.",
  "page.returnDetail.hygieneRefund.error.settled": "Money has already been paid or is on its way for this return. This item can no longer be decided.",
  "page.returnDetail.hygieneRefund.error.storeCreditNoCustomer": "This order was placed without a customer account. Store credit is not possible here.",
  "page.returnDetail.hygieneRefund.error.storeCreditUnavailable": "Shopify only offers store credit with the new customer accounts, and they are not switched on in your shop. Store credit is not possible here.",
  "page.returnDetail.hygieneRefund.error.orderUnreadable": "The order could not be read from Shopify just now. Nothing changed — please try again in a moment.",
  "page.returnDetail.error.paidSince": "retuno has already booked money on this return since this calculation — it would release the same money a second time. Nothing was booked. Re-evaluate first, then release.",
  "page.returnDetail.paidSince": "Already refunded: {amount} on {date}. This calculation is older than that booking and doesn't know about it — releasing it would pay the same money twice. What to do: click “{reevaluate}” — the new calculation deducts what was refunded.",
  "page.returnDetail.paidSinceAsCredit": "Already credited: {amount} on {date}. This calculation is older than that booking and doesn't know about it — releasing it would credit the same money twice. What to do: click “{reevaluate}” — the new calculation deducts what was credited.",
  "page.returnDetail.error.openBalance": "This order carries an open amount in Shopify that the customer has not paid yet — nothing was booked. In the Shopify admin, on this order, collect the payment or remove the unpaid line, then re-evaluate here.",
  "page.returnDetail.error.closing": "Being completed at the intake desk — please wait for the result.",
  "page.returnDetail.error.closingDecision": "Being completed — please wait for the result.",
  "page.returnDetail.intake.closing": "Being completed at the intake desk …",
  "page.returnDetail.closingDecision": "Being completed … The result appears here as soon as Shopify has replied.",
  "page.returnDetail.error.openBalanceExchange": "The open amount in Shopify is the additional payment for the exchange item. Don't remove the exchange item — nothing was booked. Once the payment has come in, re-evaluate here.",
  "page.returnDetail.error.moneyBasisMoved": "Since this calculation, money has been refunded on the same order — for example on another return or directly in Shopify. The calculation does not deduct it and is therefore no longer valid. Evaluate the return again, then approve it.",
  "page.returnDetail.error.moneyBasisMovedAsCredit": "Since this calculation, money has been paid back on the same order — for example on another return or directly in Shopify. The calculation does not deduct it and is therefore no longer valid. Evaluate the return again, then approve it.",
  "page.returnDetail.error.exchangeReleaseFailed": "Nothing was refunded. The exchange item could not be created in Shopify. Try again; if that does not help, get in touch.",
  "page.returnDetail.error.exchangeReleaseFailedAsCredit": "Nothing was credited. The exchange item could not be created in Shopify. Try again; if that does not help, get in touch.",
  "page.returnDetail.error.exchangeRemovalFailed": "The rejection was not carried out: the held exchange item could not be removed from the return in Shopify. Try again; if that does not help, get in touch.",
  "page.returnDetail.error.rejectInProgress": "This is already running — a second click does not reject again.",
  "page.returnDetail.error.approvalInFlight": "Another approval on this return is still running and has not been booked yet. Nothing was booked. Wait a few minutes and reload the page. If the approval is still unbooked after 15 minutes, withdraw it with “Withdraw approval” and evaluate again.",
  "page.returnDetail.error.goodwillOrder": "This return has a goodwill exchange: a replacement order at no cost to the customer has been created or started for the customer. Nothing else is refunded or credited as store credit.",
  "page.returnDetail.goodwillExchange.heading": "Goodwill exchange",
  "page.returnDetail.goodwillExchange.intro": "Instead of a refund, the customer gets a different item. retuno creates a new order for {zero} in Shopify for it. You ship it like any other order. Nothing is refunded, and the clarification is resolved.",
  "page.returnDetail.goodwillExchange.target": "Replacement for {article} (same price)",
  "page.returnDetail.goodwillExchange.noTargets": "There is currently no other item at the same price available for {article}.",
  "page.returnDetail.goodwillExchange.ask": "Create goodwill exchange",
  "page.returnDetail.goodwillExchange.confirmSentence": "A new order for {zero} with {target} will be created in Shopify for {article}. The customer gets no refund and no order confirmation. This resolves the clarification. It cannot be undone in retuno.",
  "page.returnDetail.goodwillExchange.confirm": "Yes, create replacement order",
  "page.returnDetail.goodwillExchange.confirmPending": "Creating replacement order …",
  "page.returnDetail.goodwillExchange.cancel": "Cancel",
  "page.returnDetail.goodwillExchange.done": "The replacement order has been created.",
  "page.returnDetail.goodwillExchange.created": "Goodwill exchange: replacement order {order} for {zero} with {target} created (by {by}). You ship it like any other order. Nothing is refunded.",
  "page.returnDetail.goodwillExchange.reserved": "The replacement order was started in Shopify, but no answer arrived. Whether it was created is unclear. Until that is settled, nothing is refunded on this return.",
  "page.returnDetail.goodwillExchange.recheck": "Check in Shopify",
  "page.returnDetail.goodwillExchange.recheckPending": "Checking in Shopify …",
  "page.returnDetail.goodwillExchange.recheckLater": "The request to Shopify may still be running. Check again in a few minutes with “Check in Shopify”.",
  "page.returnDetail.goodwillExchange.released": "No replacement order was created in Shopify. You can create the goodwill exchange again.",
  "page.returnDetail.goodwillExchange.lastRefusal": "On the last attempt, Shopify did not create the replacement order: {detail}",
  "page.returnDetail.goodwillExchange.error.notProcessed": "The goodwill exchange is available once the return is completed at the intake desk.",
  "page.returnDetail.goodwillExchange.error.noDecision": "No decision is pending on this return anymore.",
  "page.returnDetail.goodwillExchange.error.hasExchange": "This return already contains an exchange. The goodwill exchange is for returns with a refund or store credit.",
  "page.returnDetail.goodwillExchange.error.lineUnknown": "This item is not part of the return. Reload the page.",
  "page.returnDetail.goodwillExchange.error.severalUnits": "For now, the goodwill exchange is only available for one item with quantity 1.",
  "page.returnDetail.goodwillExchange.error.moneyMoved": "Money has already been refunded or approved on this return. A goodwill exchange is not possible alongside it.",
  "page.returnDetail.goodwillExchange.error.alreadyOrdered": "This return already has a goodwill replacement order.",
  "page.returnDetail.goodwillExchange.error.targetNotOffered": "This replacement item is no longer available to choose. Reload the page and choose again.",
  "page.returnDetail.goodwillExchange.error.orderUnreadable": "The order could not be read from Shopify right now. Nothing was created. Try again in a moment.",
  "page.returnDetail.goodwillExchange.error.shopifyRefused": "Shopify did not create the replacement order: {detail}. Nothing was created, and the return is unchanged.",
  "page.returnDetail.goodwillExchange.error.unclear": "Shopify did not answer. Whether the replacement order was created is unclear. Check again in a few minutes with “Check in Shopify”. Until then, nothing is refunded on this return.",
  "page.returnDetail.goodwillExchange.error.several": "Shopify shows several replacement orders for this order ({orders}). Please check in the Shopify admin and cancel the extra one.",
  "page.returnDetail.goodwillExchange.headingWithoutReturn": "Exchange instead of refund – no return shipment",
  "page.returnDetail.goodwillExchange.introWithoutReturn": "The defect is confirmed, and a replacement has been agreed with the customer. The customer does not send the defective item back. retuno creates a new order for {zero} with the replacement in Shopify. You ship it like any other order. retuno then closes the return without a refund, and the clarification case is resolved.",
  "page.returnDetail.goodwillExchange.targetWithoutReturn": "Replacement for {article} (same price)",
  "page.returnDetail.goodwillExchange.noTargetsWithoutReturn": "Neither the same item nor another item at the same price is currently available for {article}.",
  "page.returnDetail.goodwillExchange.askWithoutReturn": "Send replacement and close",
  "page.returnDetail.goodwillExchange.confirmSentenceWithoutReturn": "A new order for {zero} with {target} is created in Shopify for {article}. The return is then closed without a return shipment and without a refund. The customer gets no refund, no order confirmation and no return label. This cannot be undone in retuno.",
  "page.returnDetail.goodwillExchange.confirmWithoutReturn": "Yes, send replacement and close the return",
  "page.returnDetail.goodwillExchange.doneClosed": "The replacement order is created and the return is closed without a return shipment.",
  "page.returnDetail.goodwillExchange.closePending": "The return is still open in Shopify. Close it now – without a refund. The replacement order stays as it is.",
  "page.returnDetail.goodwillExchange.close": "Close return",
  "page.returnDetail.goodwillExchange.closePendingLabel": "Closing the return …",
  "page.returnDetail.goodwillExchange.error.closeFailed": "The replacement order is created, but Shopify did not close the return. Nothing is refunded. Try again with “Close return”.",
  "page.returnDetail.goodwillExchange.error.notDefect": "Without a return shipment, the replacement is only available when the item is marked “Defect confirmed”.",
  "page.returnDetail.error.noShop": "No shop is connected to this account.",
  "page.returnDetail.error.unknown": "This evaluation does not exist.",
  "page.returnDetail.error.noIntent": "This request does not name an action. Nothing was changed and nothing was paid out.",
  "page.returnDetail.override.title": "Decide despite the warnings",
  "page.returnDetail.override.note": "The remaining warnings all say the same thing: a piece of information is missing. An announced item never arrived, an exchange price is unknown, the order is on a block list. No rule can finish a case like that — a human decides. The release pays out exactly the calculated amount {amount}; it does not invent a figure, and it reports only the counted items to Shopify — whatever did not arrive stays open there. If you need a different amount, change the rules and re-evaluate, or reject.",
  "page.returnDetail.override.noteAsExchange": "No rule can resolve these warnings — you decide. The release carries out the exchange; money only moves if the calculation above shows an amount. If you need a different outcome, change the rules and re-evaluate, or reject.",
  "page.returnDetail.override.reasonPlaceholder": "Reason",
  "page.returnDetail.override.action": "Release despite warnings",
  "page.returnDetail.override.done": "Overridden and paid out. The chronicle names you, your reason, and the warnings that were decided over.",
  "page.returnDetail.override.pending": "Overriding …",
  "page.returnDetail.error.overrideReason": "No override without a reason. Nothing was changed and nothing was paid out.",
  "portal.outcome.refund": "Refund",
  "portal.outcome.storeCredit": "Store credit",
  "portal.outcome.exchange": "Exchange",
  "portal.shipping.own_shipping.name": "Send it yourself",
  "portal.shipping.merchant_label.name": "Return label from us",
  "mail.returnRequested.subject": "Your return {rma} at {shop} is registered",
  "mail.returnRequested.greeting": "Hello,",
  "mail.returnRequested.intro": "we have registered your return for order {order}. Your return number is {rma}.",
  "mail.returnRequested.itemsHeading": "These items are coming back:",
  "mail.returnRequested.itemQuantity": "Quantity: {quantity}",
  "mail.returnRequested.itemReason": "Reason: {reason}",
  "mail.returnRequested.itemOutcome": "You would like: {outcome}",
  "mail.returnRequested.itemExchangeTarget": "Exchange for: {variant}",
  "mail.returnRequested.itemExchangeSameProduct": "Replacement — same product",
  "mail.returnRequested.itemComment": "Your note: {comment}",
  "mail.returnRequested.payoutRefund": "Refund to your payment method: {amount}",
  "mail.returnRequested.payoutRefundAsPaidCredit": "Back to the store credit you paid with: {amount}",
  "mail.returnRequested.payoutStoreCredit": "Store credit: {amount}",
  "mail.returnRequested.payoutItemValue": "Item value: {amount}",
  "mail.returnRequested.payoutBonusOffset": "Store credit bonus offset: {amount}",
  "mail.returnRequested.payoutStoreCreditBonus": "Store credit bonus ({percent} %): {amount}",
  "mail.returnRequested.payoutFee": "Return shipping: {amount}",
  "mail.returnRequested.payoutFeeSeparate": "Return shipping: {amount} — we charge it separately.",
  "mail.returnRequested.payoutTiered": "Note: your order carries a quantity discount. Because you are keeping part of it, we recalculate the discount for the quantity you keep — the final amount can therefore differ from the figure stated above.",
  "mail.returnRequested.payoutDiscountRecomputed": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the refund amount above.",
  "mail.returnRequested.payoutDiscountRecomputedAsPaidCredit": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutDiscountRecomputedCredit": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutBundleRecomputed": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the refund amount above.",
  "mail.returnRequested.payoutBundleRecomputedAsPaidCredit": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutBundleRecomputedCredit": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutFreeItemRecomputed": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the refund amount above.",
  "mail.returnRequested.payoutFreeItemRecomputedAsPaidCredit": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutFreeItemRecomputedCredit": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the store credit amount above.",
  "mail.returnRequested.payoutAfterFee": "You receive: {amount}",
  "mail.returnRequested.payoutAfterFeeStoreCredit": "Your store credit: {amount}",
  "mail.returnRequested.payoutRailRefund": "To your payment method: {amount}",
  "mail.returnRequested.payoutRailStoreCredit": "As store credit: {amount}",
  "mail.returnRequested.payoutNone.one": "Nothing is paid out — the item is being exchanged.",
  "mail.returnRequested.payoutNone.other": "Nothing is paid out — the items are being exchanged.",
  "mail.returnRequested.exchangeDifferenceKept": "The new item is {amount} cheaper than the one you are sending back. We keep that difference; it will not be paid out.",
  "mail.returnRequested.exchangeDifferenceCredit": "The new item is {amount} cheaper than the one you are sending back. We credit the difference to your customer account as store credit as soon as we have checked your parcel.",
  "mail.returnRequested.exchangeDifferenceRefund": "The new item is {amount} cheaper than the one you are sending back. We refund the difference to your payment method as soon as we have checked your parcel.",
  "mail.returnRequested.exchangeDifferenceRefundAsPaidCredit": "The new item is {amount} cheaper than the one you are sending back. We credit the difference back to the store credit you paid with as soon as we have checked your parcel.",
  "mail.returnRequested.exchangeDifferenceRequest": "The new item is {amount} more expensive than the one you are sending back. We will send you a payment request for the difference; the new item is shipped only after your payment.",
  "mail.returnRequested.shippingHeading": "Return shipping:",
  "mail.returnRequested.shippingChosen": "You chose: {method}",
  "mail.returnRequested.shippingUnknown": "No return method chosen yet.",
  "mail.returnRequested.shippingMerchantDecides": "For your return reason we contact you before anything is sent back — whether and where to ship the item is something we sort out together.",
  "mail.returnRequested.merchantDecidesStep1": "We look at your request and get in touch with you.",
  "mail.returnRequested.merchantDecidesStep2": "Please do not ship anything until then and keep the items.",
  "mail.returnRequested.addressHeading": "Return address:",
  "mail.returnRequested.addressMissing": "We have not stored a return address yet and will send it to you separately.",
  "mail.returnRequested.nextStepsHeading": "What happens next:",
  "mail.returnRequested.nextStep1": "Pack your items securely – ideally in the original packaging.",
  "mail.returnRequested.nextStep2": "Remove or cover any old shipping labels.",
  "mail.returnRequested.nextStep3": "Send the parcel to the return address and keep the receipt.",
  "mail.returnRequested.labelPending": "Your return label will be created once we approve the return. You will find it on your receipt page — the same link below.",
  "mail.returnRequested.labelImmediate": "Your return label is being created. You will get it by email as soon as it is ready, and it will also appear on your receipt page — same link below. Please wait for it before sending the parcel.",
  "mail.returnRequested.labelAfterReview": "We will look at your return first — that is part of the process for the reason you picked. You will get your return label by email afterwards, and it will appear on your receipt page under the same link below. Please do not send the parcel yet.",
  "portal.label.afterReview": "We will look at your return first — that is part of the process for the reason you picked. Your return label comes after that: you will get it by email, and it will appear here. Please do not send the parcel yet.",
  "mail.returnRequested.statusLink": "You can look up the status at any time: {url}",
  "mail.returnRequested.statusButton": "Status of my return",
  "mail.returnRequested.support": "Questions? Write to {email}.",
  "mail.returnRequested.closing": "Kind regards\n{shop}",
  "mail.returnRequested.withdrawal": "Please note: this return goes through our own returns policy. Your statutory right of withdrawal is unaffected — if you want to withdraw from the contract, please tell us directly.",
  "mail.returnRequested.legalHeading": "Legal",
  "mail.returnLabel.subject": "Your return label for return {rma}",
  "mail.returnLabel.greeting": "Hello,",
  "mail.returnLabel.intro": "your return label for return {rma} at {shop} is ready. It is attached to this email as a PDF — you do not need to download anything.",
  "mail.returnLabel.subjectReplacement": "Your new return label for return {rma}",
  "mail.returnLabel.introReplacement": "we have created a new return label for your return {rma}. It is attached to this email as a PDF — you do not need to download anything.",
  "mail.returnLabel.oldLabel": "Please do not use the old label any more.",
  "mail.returnLabel.onSiteCheck": "Note: We will inspect your return on arrival. If there is no defect, the return fee of {amount} will be deducted from your refund.",
  "mail.returnLabel.onSiteCheckAsCredit": "Note: We will inspect your return on arrival. If there is no defect, the return fee of {amount} will be deducted from your store credit.",
  "mail.returnLabel.onSiteCheckNoAmount": "Note: We will inspect your return on arrival. If there is no defect, the return fee will be deducted from your refund.",
  "mail.returnLabel.onSiteCheckNoAmountAsCredit": "Note: We will inspect your return on arrival. If there is no defect, the return fee will be deducted from your store credit.",
  "mail.returnLabel.stepsHeading": "How to hand in the parcel:",
  "mail.returnLabel.step1": "Print the attached label and attach it to the parcel.",
  "mail.returnLabel.step1Qr": "Print the attached label and attach it to the parcel — or show the QR code below at a {carrier} drop-off point.",
  "mail.returnLabel.step2": "Remove or cover any old shipping labels.",
  "mail.returnLabel.step3": "Hand in the parcel and keep the receipt.",
  "mail.returnLabel.tracking": "Tracking number: {number}",
  "mail.returnLabel.trackingLink": "Track your parcel here: {url}",
  "mail.returnLabel.trackingButton": "Track parcel",
  "mail.returnLabel.receiptLink": "You will also find the label on your receipt page at any time: {url}",
  "mail.returnLabel.receiptButton": "Open label and receipt",
  "mail.returnLabel.support": "Questions? Write to {email}.",
  "mail.returnLabel.closing": "Kind regards\n{shop}",
  "mail.returnLabel.legalHeading": "Legal",
  "mail.returnWithdrawn.subject": "Return {rma} cancelled – {shop}",
  "mail.returnWithdrawn.greeting": "Hello,",
  "mail.returnWithdrawn.intro": "you have cancelled your return {rma} for order {order} at {shop}. That settles it – there is nothing more you need to do.",
  "mail.returnWithdrawn.nothingToSend": "Please don't send anything for this return.",
  "mail.returnWithdrawn.labelVoid": "The return label you received for it is no longer valid – please don't use it.",
  "mail.returnWithdrawn.again": "If you still want to return the items, you can start a new return at any time.",
  "mail.returnWithdrawn.portalLink": "Start a new return: {url}",
  "mail.returnWithdrawn.portalButton": "Register a new return",
  "mail.returnWithdrawn.support": "Questions? Write to {email}.",
  "mail.returnWithdrawn.closing": "Kind regards\n{shop}",
  "mail.returnWithdrawn.legalHeading": "Legal",
  "mail.returnCanceled.subject": "Your return {rma} has been closed – {shop}",
  "mail.returnCanceled.greeting": "Hello,",
  "mail.returnCanceled.intro": "{shop} has closed your return {rma} for order {order}. There is nothing more you need to do.",
  "mail.returnCanceled.introByCustomer": "You cancelled your return {rma} for order {order}. There's nothing else you need to do.",
  "mail.returnCanceled.reasonHeading": "A note from us:",
  "mail.returnCanceled.nothingToSend": "Please don't send anything more for this return.",
  "mail.returnCanceled.labelVoid": "The return label for it is no longer valid – please don't use it.",
  "mail.returnCanceled.contact": "If you have questions or still want to return the items, contact us: {email}",
  "mail.returnCanceled.contactNoEmail": "If you have questions or still want to return the items, contact us.",
  "mail.returnCanceled.receiptLink": "You can see the status of your return here: {url}",
  "mail.returnCanceled.receiptButton": "Status of my return",
  "mail.returnCanceled.closing": "Kind regards\n{shop}",
  "mail.returnCanceled.legalHeading": "Legal",
  "mail.refundRejected.subject": "Your return {rma}: refund declined – {shop}",
  "mail.refundRejected.greeting": "Hi,",
  "mail.refundRejected.intro": "we have reviewed your return {rma} for order {order}. Unfortunately we cannot issue a refund for it.",
  "mail.refundRejected.reasonHeading": "The reason:",
  "mail.refundRejected.reason.windowExpired": "Return period expired",
  "mail.refundRejected.reason.condition": "Item not in its original condition",
  "mail.refundRejected.reason.otherReason": "Other reason",
  "mail.refundRejected.windowExpiredNote": "The statutory 14-day withdrawal period for your order had already ended.",
  "mail.refundRejected.noteHeading": "We add:",
  "mail.refundRejected.contact": "If you have any questions, just reply to this email or write to us: {email}",
  "mail.refundRejected.contactNoEmail": "If you have any questions, just reply to this email.",
  "mail.refundRejected.receiptLink": "You can see the status of your return here: {url}",
  "mail.refundRejected.receiptButton": "Status of my return",
  "mail.refundRejected.closing": "Best regards\n{shop}",
  "mail.refundRejected.legalHeading": "Legal",
  "mail.returnArrived.subject": "Your parcel for return {rma} has reached us – {shop}",
  "mail.returnArrived.greeting": "Hello,",
  "mail.returnArrived.intro": "your parcel for return {rma} (order {order}) has reached us.",
  "mail.returnArrived.next": "We are now taking care of your return. There is nothing more you need to do.",
  "mail.returnArrived.closedMailFollows": "We will write to you again as soon as your return is completed.",
  "mail.returnArrived.receiptLink": "You can see the status of your return here: {url}",
  "mail.returnArrived.receiptButton": "Status of my return",
  "mail.returnArrived.support": "Questions? Write to {email}.",
  "mail.returnArrived.closing": "Kind regards\n{shop}",
  "mail.returnArrived.legalHeading": "Legal",
  "mail.returnClosed.subject": "Your return {rma} is complete – {shop}",
  "mail.returnClosed.greeting": "Hello,",
  "mail.returnClosed.intro": "your return {rma} for order {order} is complete.",
  "mail.returnClosed.bookedHeading": "This is what we have booked for you:",
  "mail.returnClosed.refund": "Refund to your original payment method: {amount}",
  "mail.returnClosed.refundAsPaidCredit": "Back to the store credit you paid with: {amount}",
  "mail.returnClosed.storeCredit": "Store credit in your customer account: {amount}",
  "mail.returnClosed.storeCreditBonus": "Store credit bonus on top: {amount}",
  "mail.returnClosed.exchange": "Exchange: we will send you your new item.",
  "mail.returnClosed.exchangeAwaitingPayment": "Exchange: we will send you your new item as soon as your payment for the price difference has reached us.",
  "mail.returnClosed.replacement": "Replacement for your defective item: we will send it to you.",
  "mail.returnClosed.replacementWrongItem": "Replacement for the wrongly delivered item: we will send it to you.",
  "mail.returnClosed.refundNote": "The refund is booked by our payment provider. Depending on your payment method, it can take a few days until you see it in your account.",
  "mail.returnClosed.refundNoteAsPaidCredit": "You paid with store credit, so the amount goes back to the store credit in your customer account.",
  "mail.returnClosed.receiptLink": "You can see the status of your return here: {url}",
  "mail.returnClosed.receiptButton": "Status of my return",
  "mail.returnClosed.support": "Questions? Write to {email}.",
  "mail.returnClosed.closing": "Kind regards\n{shop}",
  "mail.returnClosed.legalHeading": "Legal",
  "portal.step.identify": "Find order",
  "portal.step.items": "Choose items",
  "portal.step.details": "Reason and solution",
  "portal.step.shipping": "Return shipping",
  "portal.step.review": "Check and send",
  "portal.details.title": "Details for this item",
  "portal.stepIndicator": "Step {current} of {total}",
  "portal.back": "Back",
  "portal.continue": "Continue",
  "portal.contextHeading": "Your return",
  "portal.status.REQUESTED": "Waiting for approval",
  "portal.status.OPEN": "In progress",
  "portal.status.CLOSED": "Completed",
  "portal.status.DECLINED": "Cancelled",
  "portal.status.CANCELED": "Cancelled",
  "portal.status.WITHDRAWN": "Cancelled",
  "portal.outcome.refundHint": "Back to your original payment method",
  "portal.outcome.storeCreditHint": "Credited to your customer account",
  "portal.outcome.exchangeHint": "Another size or colour of the same product",
  "portal.start.title": "Register a return",
  "portal.start.intro": "Enter your order number.",
  "portal.start.orderNumber": "Order number",
  "portal.start.verifyHeading": "How should we check that the order is yours?",
  "portal.start.emailLabel": "Email address of the order",
  "portal.start.zipLabel": "Postcode of the delivery address",
  "portal.start.submit": "Find my order",
  "portal.start.blocked": "This order cannot be registered online. Please get in touch with our customer service.",
  "portal.start.blockedWithSupport": "This order cannot be registered online. Please write to {email}.",
  "portal.start.errorHeadline": "Oops, something's not right here!",
  "portal.start.missingVerification": "To find the right order, we still need your email address or postcode.",
  "portal.start.tooManyAttempts": "Too many attempts. Please try again later.",
  "portal.start.unavailable": "Our return portal is not available right now. Please contact us.",
  "portal.start.sessionExpired": "Your session has expired. Please enter your order number again.",
  "portal.start.supportHintEmail": "Can't find your order number? No problem – first check your customer account or your order confirmation. Otherwise our support team will help you at {email}.",
  "portal.start.privacyNote": "We only use these details to find your order. They are not stored in the address bar.",
  "portal.start.overviewHint": "Want to see which returns you have already registered?",
  "portal.start.overviewLink": "View all my returns",
  "portal.overview.title": "All my returns",
  "portal.overview.intro": "Enter the email address you ordered with. We will send you a link that shows all returns for this address.",
  "portal.overview.emailLabel": "Email address",
  "portal.overview.submit": "Send link",
  "portal.overview.sent": "If there are returns for this address, you will receive an email with a link shortly. It is valid for 30 minutes and works only once.",
  "portal.overview.missingEmail": "Please enter your email address.",
  "portal.overview.listHeading": "Your returns",
  "portal.overview.listForEmail": "Everything at a glance: here are your returns for {email}.",
  "portal.overview.otherAddress": "Also ordered with a different email address? No problem – just request a separate return link for it.",
  "portal.overview.empty": "There are currently no returns for this address.",
  "portal.overview.order": "Order {name}",
  "portal.overview.newReturn": "Register a return",
  "portal.overview.openTitle": "Open your returns",
  "portal.overview.openIntro": "Click the button to see all your returns. The link from the email works only once.",
  "portal.overview.openSubmit": "View my returns",
  "portal.overview.linkInvalid": "This link has expired or has already been used. Simply request a new one.",
  "portal.overview.requestNew": "Request a new link",
  "portal.items.title": "Which items would you like to return?",
  "portal.items.blockedHeading": "Not returnable",
  "portal.items.blockedTitle": "Return only possible if unopened",
  "portal.items.blockedHint": "These items cannot be registered through our returns portal. A return is only possible if the items are unopened, in their original packaging and the hygiene seal is intact.",
  "portal.items.blockedHintSend": "If these conditions are met, you can send the items directly to our returns address within the withdrawal period.",
  "portal.items.blockedHintWarning": "Important: Please only send the items back if all of the conditions above are met. Items with an opened or broken hygiene seal will not be refunded, exchanged or sent back to you.",
  "portal.items.blockedBadge": "Excluded from returns",
  "portal.items.hygieneHeading": "Hygiene items",
  "portal.items.availableHeading": "Available for return",
  "portal.items.startedHeading": "Already in your return",
  "portal.items.quantityAvailable.one": "{count} of {ordered} can still be returned",
  "portal.items.quantityAvailable.other": "{count} of {ordered} can still be returned",
  "portal.items.select": "Add to return",
  "portal.items.edit": "Change",
  "portal.items.remove": "Remove",
  "portal.items.selectedCount.one": "{count} item selected",
  "portal.items.selectedCount.other": "{count} items selected",
  "portal.items.none": "Nothing in this order can be returned right now.",
  "portal.items.noneDetail": "Nothing in this order can be returned. That happens when items have not been delivered yet, have already been returned, or are excluded from returns.",
  "portal.items.earlierHeading": "Already registered for this order",
  "portal.items.earlierRegistered": "registered on {date}",
  "portal.items.noneExchangePending": "Your exchange item is not on its way yet. Once it has reached you, you can return it here or exchange it again.",
  "portal.items.draftDropped.one": "{count} item from your draft can no longer be returned and has been removed.",
  "portal.items.draftDropped.other": "{count} items from your draft can no longer be returned and have been removed.",
  "portal.items.orderLabel": "Order {name}",
  "portal.items.quantity": "Quantity",
  "portal.items.imageAlt": "Product image: {title}",
  "portal.details.quantityHeading": "How many do you want to return?",
  "portal.details.outcomeHeading": "What would you like instead?",
  "portal.details.reasonHeading": "Why is it going back?",
  "portal.details.commentHeading": "Anything you want to tell us?",
  "portal.details.commentPlaceholder": "Write here…",
  "portal.details.promptDefault": "Tell us briefly what did not fit. It helps us improve the product.",
  "portal.details.promptPhoto": "Please describe the defect and add a photo of it. With a photo we can help you faster and issue a free return label.",
  "portal.details.photoHeading": "Photo",
  "portal.details.photoOptional": "A photo helps us, but it is not required.",
  "portal.details.photoChoose": "Choose photo",
  "portal.details.photoChosen": "Selected: {name}",
  "portal.details.photoAdded": "Photo added.",
  "portal.details.photoRemove": "Remove photo",
  "portal.details.photoAlt": "Your photo of {title}",
  "portal.details.photoTooLarge": "This file is larger than {size}. Please choose a smaller photo.",
  "portal.details.photoUnsupported": "Only JPEG, PNG, WebP and HEIC photos are accepted.",
  "portal.details.feeAhead": "If you pick our return label next, the return shipping fee comes off this amount.",
  "portal.details.photoEmpty": "This file is empty or damaged. Please pick the photo again.",
  "portal.details.save": "Save and continue",
  "portal.details.photoUploading": "Uploading photo …",
  "portal.details.photoPreparing": "Preparing photo …",
  "portal.details.saveDefault": "Save entries",
  "portal.details.blockerOutcome": "Please choose what you would like instead.",
  "portal.details.blockerReason": "Please choose a reason.",
  "portal.details.blockerPhoto": "Please upload a photo.",
  "portal.details.blockerComment": "Please describe it briefly.",
  "portal.details.blockerCommentDefect": "Briefly describe the defect.",
  "portal.details.blockerExcluded": "We have excluded this article from that option. Please pick a different one.",
  "portal.details.blockerConditions": "Please accept the return conditions first.",
  "portal.details.conditionsIntro": "We can only take back hygiene items unopened and in their original packaging. Please confirm that you are sending the item back this way.",
  "portal.details.conditionsAccept": "Return conditions accepted",
  "portal.details.conditionsWarning": "The hygiene seal must not be opened or damaged. The item must be sent back to us unopened and in its original packaging. Otherwise, the item will be disposed of. There will be no refund, no exchange and no return shipment to you.",
  "portal.details.blockerExchangePolicy": "This exchange is not possible. Please pick a different variant or a different outcome.",
  "portal.details.defectRefundExpired": "Unfortunately, the withdrawal period has already expired. A refund is therefore no longer possible.",
  "portal.details.defectExpired": "Unfortunately, it is no longer possible to register this via our returns portal. Please contact our customer service directly by email – we will be happy to look into your request individually.",
  "portal.outcome.excluded": "Not available for this article.",
  "portal.outcome.noCustomerAccount": "Store credit needs a customer account. This order was placed as a guest — please choose a different option.",
  "portal.details.blockerVariant": "Please choose the variant you would like instead.",
  "portal.details.blockerVariantGroup": "The ticked variant does not match your choice above — please pick the variant again.",
  "portal.details.blockerSizeTooSmall": "Your reason doesn't quite match the size you chose – please take another look.",
  "portal.details.blockerSizeTooLarge": "Your reason doesn't quite match the size you chose – please take another look.",
  "portal.exchange.heading": "Which variant would you like instead?",
  "portal.exchange.model": "Model",
  "portal.exchange.ordered": "You ordered: {variant}",
  "portal.exchange.soldOut": "Sold out",
  "portal.exchange.blocked.disabled": "We do not offer exchanges.",
  "portal.exchange.blocked.country": "We do not exchange into your delivery country.",
  "portal.exchange.blocked.orderTag": "This order cannot be exchanged.",
  "portal.exchange.blocked.window": "The window for an exchange has passed.",
  "portal.exchange.packSizeWord": "Other pack size",
  "portal.exchange.blocked.packSize": "Exchanges stay in the pack size you ordered — you can pick another size or colour here.",
  "portal.exchange.blocked.notSamePrice": "Only same-price variants are possible.",
  "portal.exchange.blocked.priceIncrease": "More expensive variants are not possible.",
  "portal.exchange.noTarget": "No variant is available to exchange this item for right now.",
  "portal.exchange.blocked.sameVariantNever": "We do not offer the same variant again. You can choose a refund instead — or another variant, if there is one.",
  "portal.exchange.sameVariant": "The same variant again \u2014 as a replacement delivery.",
  "portal.exchange.sameProduct": "Same product",
  "portal.exchange.appliedDiscount": "Discount of the returned item carried over ({amount} per unit)",
  "portal.exchange.priceDifference": "Price difference: {amount}",
  "portal.exchange.unavailable": "Currently unavailable.",
  "portal.exchange.settlement": "We confirm the exchange once we have checked your parcel.",
  "portal.exchange.chosen": "You selected: {variant}",
  "portal.exchange.orderedMark": "Ordered",
  "portal.shipping.title": "How would you like to send it back?",
  "portal.shipping.own_shipping.description": "Simply send your parcel with the carrier of your choice and keep the receipt to be safe.",
  "portal.shipping.merchant_label.description": "We create the label and send it to you.",
  "portal.shipping.feeDeducted": "{amount} is deducted from your refund.",
  "portal.shipping.feeDeductedAsCredit": "{amount} is deducted from your store credit.",
  "portal.shipping.feeSeparate": "We charge {amount} separately.",
  "portal.shipping.feeOwnPostage": "You pay the postage yourself.",
  "portal.shipping.feeMerchant": "We pay.",
  "portal.shipping.feeWaived": "The fee does not apply for your return reason.",
  "portal.shipping.excludedHeading": "Not available for this return",
  "portal.shipping.excludedFor.exchange": "Not offered for an exchange.",
  "portal.shipping.excludedFor.refund": "Not offered for a refund.",
  "portal.shipping.excludedFor.store_credit": "Not offered for store credit.",
  "portal.shipping.excludedNoRoute": "We cannot buy a return label for {country} at the moment — please use your own shipping.",
  "portal.shipping.excludedCountryRefused": "We can't provide a return label for your country ({country}) — please send the parcel yourself.",
  "portal.shipping.excludedLabelFeeLost": "Not available for an exchange-only return — the label fee is deducted from your refund, and there is none here. Please ship it yourself.",
  "portal.shipping.excludedLabelFeeLostAsCredit": "Not available for an exchange-only return — the label fee is deducted from your store credit, and there is none here. Please ship it yourself.",
  "portal.shipping.excludedLabelFeeNotCovered": "Not available — the return label costs {fee} and is deducted from your refund, which is lower than that for these items. Please send the parcel yourself.",
  "portal.shipping.excludedLabelFeeNotCoveredAsCredit": "Not available — the return label costs {fee} and is deducted from your store credit, which is lower than that for these items. Please send the parcel yourself.",
  "portal.shipping.notReadyYet": "We have not switched this option on yet.",
  "portal.shipping.none": "We have not set up a return method yet. Please contact us before you send the parcel.",
  "portal.shipping.addressHeading": "Send your parcel to",
  "portal.shipping.addressMissing": "We have not stored a return address yet. You will get it by email before you send the parcel.",
  "portal.shipping.addressOnLabel": "The return address is printed on your return label — you do not need to write it anywhere.",
  "portal.shipping.blockerMethod": "Please choose how you want to send it back.",
  "portal.shipping.methodMissing": "No return method has been chosen yet — please choose one before you continue.",
  "portal.shipping.methodUnavailable": "The return method you chose no longer fits your selection — please choose again before you continue.",
  "portal.shipping.merchantDecidesHeading": "We will be in touch",
  "portal.shipping.merchantDecides": "You gave “{reasons}” as the reason. For that we contact you before anything is sent back: whether and where to ship the item is something we sort out together.",
  "portal.shipping.merchantDecidesMixed": "This applies to your whole return — including the items with a different reason.",
  "portal.shipping.merchantDecidesWait": "Please do not ship anything yet and keep the items until you hear from us.",
  "portal.review.title": "Check and confirm",
  "portal.review.windowExpired": "The regular withdrawal period for your order has already expired. You can still register your return. Please note, however, that in this case you send the items back at your own risk. Once the items have arrived and been checked, we will decide individually whether we can still accept your return as a goodwill gesture. A refund or exchange therefore cannot be guaranteed. We recommend contacting our customer service before you send anything. That way we can check in advance whether a return is still possible. This saves you unnecessary shipping costs and the effort of a return that we might still have to decline once it arrives. If the return is declined, we can send the items back to you on request.",
  "portal.review.exchangeWindowExpired": "The exchange period for your order has already expired. You can still register your return. Please note, however, that in this case you send the items back at your own risk. Once the items have arrived and been checked, we will decide individually whether we can still accept your return as a goodwill gesture. An exchange therefore cannot be guaranteed. We recommend contacting our customer service before you send anything. That way we can check in advance whether a return is still possible. This saves you unnecessary shipping costs and the effort of a return that we might still have to decline once it arrives. If the return is declined, we can send the items back to you on request.",
  "portal.review.itemsHeading": "Your items",
  "portal.review.payoutHeadingRefund": "Your refund",
  "portal.review.payoutHeadingRefundAsPaidCredit": "Your credit",
  "portal.review.payoutHeadingStoreCredit": "Your store credit",
  "portal.review.payoutHeadingMixed": "Your refund at a glance",
  "portal.review.payoutHeadingMixedAsPaidCredit": "Your credit at a glance",
  "portal.review.payoutHeadingExchange": "Your exchange",
  "portal.review.payoutRefund": "Refund to your payment method",
  "portal.review.payoutRefundAsPaidCredit": "Back to the store credit you paid with",
  "portal.review.payoutStoreCredit": "Store credit",
  "portal.review.payoutItemValue": "Item value",
  "portal.review.payoutBonusOffset": "Store credit bonus offset",
  "portal.review.payoutBonusOffsetNote": "This order already paid out store credit with a bonus. The bonus applies to credit that stays in our shop — when money goes back, it is offset against it.",
  "portal.review.payoutStoreCreditBonus": "Store credit bonus ({percent} %)",
  "portal.review.payoutFee": "Return shipping",
  "portal.review.payoutFeeSeparate": "Return shipping {amount} — we charge it separately.",
  "portal.review.payoutFeeExceeds": "The return shipping fee is higher than the amount for this return. Nothing will be paid out — and the remainder of the fee will not be charged to you.",
  "portal.review.payoutTotal": "You receive",
  "portal.review.payoutTotalStoreCredit": "Your store credit",
  "portal.review.payoutRailRefund": "To your payment method",
  "portal.review.payoutRailStoreCredit": "As store credit",
  "portal.review.exchangeDifferenceKept": "The new item is {amount} cheaper than the one you are sending back. We keep that difference — it is not paid out.",
  "portal.review.exchangeDifferenceCredit": "The new item is {amount} cheaper than the one you are sending back. We credit the difference to your customer account as store credit once we have checked your parcel.",
  "portal.review.exchangeDifferenceRefund": "The new item is {amount} cheaper than the one you are sending back. We refund the difference to your payment method once we have checked your parcel.",
  "portal.review.exchangeDifferenceRefundAsPaidCredit": "The new item is {amount} cheaper than the one you are sending back. We credit the difference back to the store credit you paid with once we have checked your parcel.",
  "portal.review.exchangeDifferenceRequest": "The new item is {amount} more expensive than the one you are sending back. We will send you a payment request for the difference — the new item ships only once you have paid.",
  "portal.review.surchargeHeading": "Extra charge for your exchange",
  "portal.review.surchargeCost": "Your choice costs an extra {amount}. We will send you a payment request for this amount.",
  "portal.review.surchargeShipping": "The new item is only shipped once you have paid the extra charge in full. Without payment, nothing is shipped.",
  "portal.review.payoutPending": "We confirm the final amount once we have checked your parcel.",
  "portal.review.payoutTiered": "Your order carries a quantity discount. Because you are keeping part of it, we recalculate the discount for the quantity you keep — the final amount can therefore differ from the figure above.",
  "portal.review.payoutDiscountRecomputed": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the refund amount shown above.",
  "portal.review.payoutDiscountRecomputedAsPaidCredit": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutDiscountRecomputedCredit": "Note: when you return items, your quantity discount is recalculated for the number of items you keep. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutBundleRecomputed": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the refund amount shown above.",
  "portal.review.payoutBundleRecomputedAsPaidCredit": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutBundleRecomputedCredit": "Note: when you return items, your bundle price is recalculated for the number of items you keep. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutFreeItemRecomputed": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the refund amount shown above.",
  "portal.review.payoutFreeItemRecomputedAsPaidCredit": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutFreeItemRecomputedCredit": "Note: when you return items, we check whether your free item still applies. If the order value then falls below the threshold, the free item is charged at its regular price. The difference is already included in the store credit amount shown above.",
  "portal.review.payoutUnavailable": "We cannot show an amount right now. We will confirm it after checking your parcel.",
  "portal.review.shippingHeading": "Return shipping",
  "portal.review.shippingMerchantDecides": "For your return reason we contact you before anything is sent back — please do not ship anything yet.",
  "portal.review.shippingLabelInMail": "You will receive your return label by email.",
  "portal.review.submit": "Submit return",
  "portal.review.failed": "The return could not be registered. Nothing was submitted — please try again.",
  "portal.review.failedUnknown": "The return could not be registered just now. Please try again in a few minutes.",
  "portal.review.rejectedNotReturnable": "At least one item can no longer be returned — we no longer list it as returnable. Nothing was registered; please review your selection.",
  "portal.review.rejectedQuantity": "For one item, the chosen quantity is higher than what can still be returned. Nothing was registered — please reduce the quantity.",
  "portal.review.mirrorFailed": "Your return has been registered — we just could not display it yet. Please do not submit it again; we have received it.",
  "portal.review.orderBlockedWithSupport": "This order can no longer be registered online. Please write to {email}.",
  "portal.review.orderBlocked": "This order can no longer be registered online. Please get in touch with our customer service.",
  "portal.review.lineExcluded": "We have meanwhile excluded one of your articles from returns, or from the option you picked. Please review your selection.",
  "portal.review.exchangeTargetMissing": "An exchange is missing its target variant. Please go back to the item and pick the variant — or choose a refund instead.",
  "portal.review.exchangeUnavailable": "The variant you asked for is not available right now. Please go back and pick another one, or choose a refund instead.",
  "portal.review.exchangeNotAllowed": "An exchange is not possible for this order. Please go back and choose a refund or store credit for the affected items.",
  "portal.review.storeCreditHeading": "Store credit",
  "portal.review.storeCreditIntro": "You chose store credit for at least one item. The credit can only be used in our shop and cannot be refunded to your original payment method.",
  "portal.review.storeCreditConfirm": "Yes, I would like a store credit instead of a refund.",
  "portal.review.storeCreditUnconfirmed": "Please confirm that you want store credit instead of a refund.",
  "portal.review.empty": "You have not chosen an item yet.",
  "portal.review.editItem": "Change",
  "portal.review.commentLabel": "Your note",
  "portal.review.photoLabel": "Photo attached",
  "portal.done.title": "Your return is registered",
  "portal.done.titleCanceled": "This return was cancelled",
  "portal.done.titleWithdrawn": "You cancelled this return",
  "portal.done.titleClosedNotReceived": "This return has been closed",
  "portal.done.titleArrived": "Your return has arrived with us",
  "portal.done.titleChecked": "We've checked your return",
  "portal.done.canceledNote": "This return was cancelled. Please do not send anything back. If you still need it, register a new return.",
  "portal.done.withdrawnNote": "You cancelled this return. Please do not send anything back. If you still need it, register a new return.",
  "portal.done.closedNotReceivedNote": "We closed this return because the item did not arrive with us. If you have questions about it, contact us.",
  "portal.done.arrivedNote": "We're now checking your items. Afterwards, you'll see here what happens to each one.",
  "portal.done.registerAgain": "Register a new return",
  "portal.done.notAccepted": "Not accepted",
  "portal.done.notAcceptedUnits": "{count} × Not accepted",
  "portal.done.notAcceptedNote": "We're sorry, but we can't accept this item in this condition — we'll get in touch with you by email.",
  "portal.done.notAcceptedNoteDisposed": "We're sorry, but we can't accept this item in this condition.",
  "portal.done.notInParcel": "Not in your parcel",
  "portal.done.notInParcelUnits": "{count} × not in your parcel",
  "portal.done.underReview": "Being checked",
  "portal.done.underReviewUnits": "{count} × being checked",
  "portal.done.underReviewNote": "We're taking a closer look at this item — we'll get in touch with you by email.",
  "portal.done.sendingBack": "Coming back to you",
  "portal.done.sendingBackUnits": "{count} × coming back to you",
  "portal.done.sendingBackNote": "We're sending this item back to you — there's no refund, store credit or exchange for it.",
  "portal.done.opened": "Opened — not refunded for hygiene reasons",
  "portal.done.openedUnits": "{count} × opened — not refunded for hygiene reasons",
  "portal.done.payoutUnsettled": "The amount isn't settled yet because we couldn't accept every item.",
  "portal.done.payoutUnderReview": "The amount isn't settled yet because we're taking a closer look at one item.",
  "portal.done.payoutWindowExpired": "Once the items have arrived and been checked, we will decide individually whether we can still accept your return as a goodwill gesture. A refund or exchange therefore cannot be guaranteed.",
  "portal.done.payoutWindowExpiredContact": "We recommend contacting our customer service before you send anything. That way we can check in advance whether a return is still possible. This saves you unnecessary shipping costs and the effort of a return that we might still have to decline once it arrives.",
  "portal.done.rmaLabel": "Return number",
  "portal.done.orderLabel": "Order",
  "portal.done.statusLabel": "Status",
  "portal.label.heading": "Your return label",
  "portal.label.intro": "Print the label and attach it to the parcel.",
  "portal.label.introQr": "No printer? Show the QR code at a {carrier} drop-off point instead.",
  "portal.label.download": "Download return label (PDF)",
  "portal.label.qrApp": "Open QR code in the Post & DHL app",
  "portal.label.qrAlt": "QR code for handing in the return at a {carrier} drop-off point",
  "portal.label.qrHint": "Show this code at the counter — no printer needed.",
  "portal.label.trackingLabel": "Tracking number",
  "portal.label.sandbox": "Test label from the {carrier} sandbox. It is not a valid shipping label and cannot be used to send a parcel.",
  "label.carrier.dhl_de": "DHL",
  "label.carrier.sendcloud": "Sendcloud",
  "portal.label.pending": "Your return label is being created. Reload this page in a moment.",
  "portal.label.retrying": "Your return label is taking longer than usual: the carrier is not answering. We keep trying — you will get it by email as soon as it is ready, and it will appear here too. Please do not send the parcel yet.",
  "portal.label.failed": "The return label could not be created. We have been notified and will get in touch.",
  "portal.receipt.title": "Open receipt",
  "portal.receipt.intro": "To show the receipt for return {rma}, we need one detail from the order.",
  "portal.receipt.submit": "Show receipt",
  "portal.receipt.notFound": "We did not find a receipt with these details.",
  "portal.receipt.withdrawOpen": "Cancel this return …",
  "portal.receipt.withdrawIntro": "You can cancel this return as long as we have not approved it yet — for example if you would rather exchange than get a refund.",
  "portal.receipt.withdrawConsequences": "Cancelling is final. We will not process this return any further.",
  "portal.receipt.withdrawNothingBack": "Please do not send anything back for this return.",
  "portal.receipt.withdrawLabel": "If you already received a return label, please do not use it any more.",
  "portal.receipt.withdrawAgain": "Afterwards you can register a new return — for example with an exchange instead of a refund.",
  "portal.receipt.withdrawSubmit": "Cancel for good",
  "portal.receipt.withdrawBlocked": "This return can no longer be cancelled — we have already processed it. Nothing has changed. If you no longer need it, please contact us.",
  "portal.receipt.withdrawFailed": "Cancelling did not work. Nothing about your return has changed — please try again later or contact us.",
  "portal.receipt.cancelViaShop": "Don't need this return anymore? Please contact us. You can't cancel it here in the portal.",
  "portal.receipt.cancelOpen": "Cancel this return …",
  "portal.receipt.cancelIntro": "You can cancel this return as long as your parcel hasn't reached us yet.",
  "portal.receipt.cancelConsequences": "Cancelling is final. We won't process this return any further — a requested exchange is dropped too.",
  "portal.receipt.cancelLabel": "If you've already received a return label, please don't send the parcel with it.",
  "portal.receipt.cancelAgain": "You can register a new return afterwards.",
  "portal.receipt.cancelSubmit": "Cancel for good",
  "portal.receipt.cancelBlocked": "This return can no longer be cancelled — your parcel has already reached us or has been processed. Nothing was changed. Please contact us.",
  "portal.receipt.cancelFailed": "Cancelling didn't work. Nothing has changed on your return — please try again later or contact us.",
  "portal.done.nextStepsHeading": "What happens next",
  "portal.done.nextStep1": "Pack your items securely – ideally in the original packaging.",
  "portal.done.nextStep2": "Remove or cover any old shipping labels on the parcel.",
  "portal.done.nextStep3": "Send the parcel to the return address below and keep the receipt.",
  "portal.done.nextStep3OnLabel": "Send the parcel to the address on your return label and keep the receipt.",
  "portal.done.nextStep3NoAddress": "Send the parcel to the return address and keep the receipt.",
  "portal.done.merchantDecidesStep1": "For your return reason we contact you before anything is sent back — whether and where to ship the item is something we sort out together.",
  "portal.done.merchantDecidesStep2": "Please do not ship anything until then and keep the items and this receipt.",
  "portal.done.mailSent": "A return confirmation was sent to:",
  "portal.done.mailNotDelivered": "We have not switched on email delivery yet, so this page is the only receipt. Please print or save it.",
  "portal.done.backToShop": "Back to the shop",
  "page.returns.status.REQUESTED": "Requested",
  "page.returns.status.OPEN": "Approved",
  "page.returns.status.CLOSED": "Completed",
  "page.returns.status.DECLINED": "Cancelled",
  "page.returns.status.CANCELED": "Cancelled",
  "page.returns.status.WITHDRAWN": "Cancelled by the customer",
  "page.returns.status.ENDED_NOT_RECEIVED": "Ended – item not received / no further action",
  "page.returns.status.STORED_OPEN": "Stored",
  "page.returns.status.IN_PROGRESS": "In progress",
  "page.returns.column.request": "Customer request",
  "page.returns.requestSummary": "{outcome} · {reason}",
  "page.returns.requestMixed.one": "Mixed · {count} item",
  "page.returns.requestMixed.other": "Mixed · {count} items",
  "page.returnDetail.decide.heading": "Decide on this request",
  "page.returnDetail.decide.release": "Release return",
  "page.returnDetail.decide.releasePending": "Releasing …",
  "page.returnDetail.decide.released": "Return released — Shopify emails the customer.",
  "page.returnDetail.requestReason.shopifyAccount": "The customer requested this return through their Shopify customer account, not the returns portal. No deadlines or rules were checked.",
  "page.returnDetail.requestReason.windowExpired": "Requested after the return deadline ({date}).",
  "page.returnDetail.requestReason.merchantContact": "The customer is waiting for your message.",
  "page.returnDetail.requestReason.reasonReview": "The reason “{reason}” is checked first. The label goes out afterwards.",
  "page.returnDetail.requestReason.labelOnSend": "“Create the return label now” sends the label — that accepts the return.",
  "page.returnDetail.requestReason.selfShip": "The customer ships it themselves. The return is accepted when the parcel is completed at the receiving desk.",
  "page.returnDetail.requestConcerns.heading": "Reasons against accepting:",
  "page.returnDetail.reviewReasons.heading": "Needs review because:",
  "page.returnDetail.reviewReasons.decide": "What to do: if everything is fine, click “Release despite warnings” further down in the “Refund calculation” card. Otherwise “Reject refund” – then nothing is refunded.",
  "page.returnDetail.reviewReasons.decideAsCredit": "What to do: if everything is fine, click “Release despite warnings” further down in the “Store credit calculation” card. Otherwise “Reject store credit” – then nothing is credited.",
  "page.returnDetail.reviewReasons.decideAsExchange": "What to do: if everything is fine, click “Release despite warnings” further down in the “Refund calculation” card — the exchange then goes ahead. Otherwise “Reject exchange” – then there is no exchange.",
  "page.returnDetail.reviewReasons.decideAsOpenExchange": "What to do: if everything is fine, click “Release despite warnings” further down in the “Refund calculation” card. Otherwise “Decline review”. Nothing is refunded for this exchange either way, and the exchange itself stays in place.",
  "page.returnDetail.reviewReasons.decideStray": "What to do: contact the customer and agree how to handle the stray item, if needed start the return shipment of the wrong goods, and wait whether {article} still arrives.",
  "page.returnDetail.reviewReasons.whatToDo": "What to do:",
  "page.returnDetail.reviewReasons.release": "The refund of {amount} is waiting for your release.",
  "page.returnDetail.reviewReasons.releaseCredit": "The store credit of {amount} is waiting for your release.",
  "page.returnDetail.reviewReasons.releaseMixed": "The refund of {payment} and the store credit of {storeCredit} are waiting for your release.",
  "page.returnDetail.reviewReasons.releaseMixedAsPaidCredit": "The store credit of {payment} and {storeCredit} is waiting for your release.",
  "page.returnDetail.reviewReasons.decideDamaged": "No decision yet on the damaged item {article}. What to do: decide further down under “Opened and damaged items”: {choices}.",
  "page.returnDetail.reviewReasons.decideOpenedRefund": "No decision yet on how much is refunded for the opened item {article}. What to do: decide further down under “Opened and damaged items”: {choices}.",
  "page.returnDetail.reviewReasons.decideOpenedCredit": "No decision yet on how much store credit is given for the opened item {article}. What to do: decide further down under “Opened and damaged items”: {choices}.",
  "page.returnDetail.reviewReasons.decideOpenedExchange": "No decision yet on the opened item {article}, which the customer wants to exchange. What to do: decide further down under “Opened and damaged items”: {choices}.",
  "page.returnDetail.reviewReasons.choice": "“{label}”",
  "page.returnDetail.reviewReasons.or": "or",
  "page.returnDetail.reviewReasons.contact": "You write the message further down in the “{card}” card.",
  "page.returnDetail.decide.reason.RETURN_PERIOD_ENDED": "Return period has ended",
  "page.returnDetail.decide.reason.FINAL_SALE": "Final sale",
  "page.returnDetail.decide.reason.OTHER": "Other reason",
  "page.returnDetail.decide.error.notDecidable": "This return has already been decided — it is no longer an open request. Nothing was changed.",
  "page.returnDetail.decide.error.inProgress": "Already running — a second click doesn’t decide again.",
  "page.returnDetail.decide.error.unclear": "Shopify didn’t answer — it’s unclear whether the request was accepted or declined. Check the return in Shopify. If it’s still a request there, the button works again after 15 minutes.",
  "page.returnDetail.decide.failed": "Shopify rejected the action. Nothing was changed.",
  "page.returnDetail.decide.merchantContact": "The customer is waiting to hear from you. For the reason “{reason}” you get in touch before anything is sent back — there is no return method and no label. Sort out with the customer whether and where to ship, then decide here.",
  "page.returnDetail.decide.merchantContactNoReason": "The customer is waiting to hear from you. For one of the reasons given you get in touch before anything is sent back — there is no return method and no label. Sort out with the customer whether and where to ship, then decide here.",
  "page.returnDetail.decide.wrongItemCheck.heading": "Reason “{reason}” – review required:",
  "page.returnDetail.decide.wrongItemCheck.photo": "Check the photo: is it really a wrong delivery?",
  "page.returnDetail.decide.wrongItemCheck.yes": "Yes: send the customer a free return label.",
  "page.returnDetail.decide.wrongItemCheck.no": "No: tell the customer via the message function that it is not a wrong delivery and that they have to arrange the return shipment themselves.",
  "page.returnDetail.label.heading": "Return label",
  "page.returnDetail.label.creating": "The return label is being created. Once it is ready, the tracking number, carrier and download appear here – reload the page in a minute.",
  "page.returnDetail.label.grantedMissing": "The return label was approved but not created. Please report this return to retuno.",
  "page.returnDetail.label.shopifyTracking": "Shopify lists a return shipment for this return with the tracking number:",
  "page.returnDetail.label.shopifyNote": "The label was not created through retuno. You find the label, carrier and tracking in Shopify.",
  "page.returnDetail.label.shopifyOpen": "Open in Shopify",
  "page.returnDetail.label.withheld": "No return label was created for this return: the reason the customer picked is meant to be reviewed first. The customer knows — they were asked not to send the parcel yet.",
  "page.returnDetail.label.create": "Create the return label now",
  "page.returnDetail.label.requested": "The label is being created. The customer gets it by email; it will also appear here and on their receipt page.",
  "page.returnDetail.label.retryPending": "Carrier not reachable — next attempt at {when} (attempt {attempt} of {total}).",
  "page.returnDetail.label.retryPendingOther": "The label could not be created yet — next attempt at {when} (attempt {attempt} of {total}).",
  "page.returnDetail.label.retry": "Create the return label again",
  "page.returnDetail.label.retried": "The label is being requested again. If it works, the customer gets it by email; it will also appear here and on their receipt page.",
  "page.returnDetail.error.labelBlocked": "No return label can be created for this return — either none was withheld, one already exists, or the return is finished. Nothing was changed.",
  "page.returnDetail.error.labelReplaceBlocked": "A new return label is not possible for this return right now.",
  "page.returnDetail.merchantLabel.notOffered.arrived": "This return is marked as arrived, so retuno no longer offers a return label. It counts as arrived as soon as something was recorded at the intake desk, for example an item counted. Only opening it does not count.",
  "page.returnDetail.merchantLabel.notOffered.state": "In its current status the return allows no way back any more, so retuno offers no return label.",
  "page.returnDetail.merchantLabel.feeWaivedReview": "Label fee: waived — defect confirmed.",
  "page.returnDetail.merchantLabel.feeWaivedWrongItem": "Label fee: waived — wrong item confirmed.",
  "page.returnDetail.merchantLabel.feeWaivedReason": "Label fee: waived — return reason “{reason}”.",
  "page.returnDetail.merchantLabel.feeCharged": "Label fee: charged against the refund — no defect confirmed.",
  "page.returnDetail.merchantLabel.feeChargedAsCredit": "Label fee: charged against the store credit — no defect confirmed.",
  "page.returnDetail.merchantLabel.feeUnknown": "Whether a label fee applies is calculated in the evaluation.",
  "page.returnDetail.merchantLabel.feeNone": "No label fee — it is switched off in your rules.",
  "page.returnDetail.merchantLabel.feeChargedDesk": "Label fee: charged against the refund — decided at the intake desk.",
  "page.returnDetail.merchantLabel.feeChargedDeskAsCredit": "Label fee: charged against the store credit — decided at the intake desk.",
  "page.returnDetail.merchantLabel.feeWaivedDesk": "Label fee: waived — decided at the intake desk.",
  "page.returnDetail.merchantLabel.approveAndSend": "Accept and send return label",
  "page.returnDetail.merchantLabel.send": "Send return label",
  "page.returnDetail.merchantLabel.sent": "The return label is being created and emailed to the customer.",
  "page.returnDetail.merchantLabel.error.blocked": "No return label can be sent after review for this return — a review is missing, a label already exists, or the return is closed. Nothing was changed.",
  "page.returnDetail.merchantLabel.error.approve": "Shopify declined the acceptance — no label was created. Your release is saved; try again in a moment.",
  "page.returnDetail.merchantLabel.error.inProgress": "Already running — a second click doesn’t accept the request again.",
  "page.returnDetail.merchantLabel.error.unclear": "Shopify didn’t answer — it’s unclear whether the request was accepted; no label was created. Check the return in Shopify. If it’s still a request there, the button works again after 15 minutes.",
  "page.returnDetail.merchantLabel.sendPending": "Sending …",
  "page.returnDetail.selfShipLabel.create": "Create a return label and send it to the customer",
  "page.returnDetail.label.carrier": "Carrier",
  "page.returnDetail.label.tracking": "Tracking number",
  "page.returnDetail.label.shopify": "Attached in Shopify",
  "page.returnDetail.label.attached": "Yes — label and tracking are on the reverse delivery.",
  "page.returnDetail.label.attachFailed": "No — Shopify rejected the attachment. The label itself is valid.",
  "page.returnDetail.label.attachPending": "Not attempted yet.",
  "page.returnDetail.label.downloadPdf": "Download label (PDF)",
  "page.returnDetail.label.downloadQr": "Download QR code (PNG)",
  "page.returnDetail.label.sandbox": "Test label from the {carrier} sandbox — not a valid shipping label.",
  "page.returnDetail.label.pending": "The label is being created.",
  "page.returnDetail.label.nothingBought": "Nothing was bought; you can try again.",
  "page.returnDetail.label.announcedNotConfirmed": "The return has been created with the carrier, but the carrier has not confirmed it yet. Nothing was purchased on top — a new attempt only reads it back and never creates a second one.",
  "page.returnDetail.label.failedNoAnswer": "{carrier} did not answer this attempt. Whether a return was created there cannot be determined from here. Please check the carrier account first — a second attempt can create a second shipment.",
  "page.returnDetail.label.carrierReference": "Held by the carrier as",
  "page.returnDetail.label.noRoute": "No label was bought: this customer's country has no shipping route assigned. Assign one under Settings → Shipping & carrier access, then trigger the label again.",
  "page.returnDetail.label.notConfigured": "No label was bought: a carrier is assigned for this country, but no credentials are stored for it. Add them under Settings → Shipping & carrier access, then trigger the label again.",
  "page.returnDetail.label.problem": "No label was bought. The reason is below; the customer is waiting for something that has not been sent.",
  "page.returnDetail.label.error.carrierRejected": "{carrier} rejected the label. Usually something in the address is off.",
  "page.returnDetail.label.error.carrierLogin": "{carrier} rejected our login. Please check the credentials under Settings → Shipping & carrier access.",
  "page.returnDetail.label.error.carrierUnreachable": "{carrier} could not be reached. Please try again later.",
  "page.returnDetail.label.error.carrierIncomplete": "{carrier} answered, but did not send a finished label. Please try again. If it fails again, please get in touch with us.",
  "page.returnDetail.label.error.setupMissing": "Shipping for this country is not fully set up yet. Please check under Settings → Shipping & carrier access.",
  "page.returnDetail.label.error.addressMissing": "This return has no address of the customer, so there is no label.",
  "page.returnDetail.label.error.addressName": "The address has no name.",
  "page.returnDetail.label.error.addressHouseNumber": "The address has no house number. {carrier} needs street and house number.",
  "page.returnDetail.label.error.addressPostcodeCity": "The address has no postcode or city.",
  "page.returnDetail.label.error.internal": "Something went wrong on our side with the label. Please get in touch with us.",
  "page.returnDetail.label.error.unknown": "The label did not work.",
  "page.returnDetail.label.attach.waitingForApproval": "Not yet: the label goes to Shopify as soon as the request is approved.",
  "page.returnDetail.label.attach.alreadyAttached": "The label is already attached to the return in Shopify.",
  "page.returnDetail.label.attach.fileMissing": "The label file is missing on our side. Please get in touch with us.",
  "page.returnDetail.label.attach.shopifyRefused": "Shopify did not accept the label. Please try again later.",
  "page.returnDetail.label.notRequested": "No label from us is planned for this return.",
  "page.returnDetail.label.goodsArrived": "The goods have already arrived, no label is needed anymore.",
  "page.returnDetail.label.problemUnknown": "Something went wrong with the label. Please get in touch with us.",
  "page.returnDetail.label.boughtAt": "Bought on",
  "page.returnDetail.label.boughtToday": "{date} (today)",
  "page.returnDetail.label.boughtAgo.one": "{date} ({count} day ago)",
  "page.returnDetail.label.boughtAgo.other": "{date} ({count} days ago)",
  "page.returnDetail.label.replace.open": "New return label …",
  "page.returnDetail.label.replace.explainExpired": "If the label has expired or been lost, retuno buys a new return label from DHL and emails it to the customer. The old label stays here in the history; DHL cannot cancel it. The email asks the customer not to use the old label any more. If the customer still uses the old label, DHL charges you for it.",
  "page.returnDetail.label.replace.explainStray": "The customer is still sending the missing items: retuno buys a new return label from DHL for them and emails it to the customer. The first label stays here in the history.",
  "page.returnDetail.label.replace.confirm": "Yes, create a new label",
  "page.returnDetail.label.replace.done": "The new return label is being created. The customer gets it by email; it then appears here and on their receipt page.",
  "page.returnDetail.label.replace.alreadyDone": "This label has already been replaced — no further label was bought.",
  "page.returnDetail.label.replace.sendcloud": "retuno cannot create a new return label for Sendcloud labels yet.",
  "page.returnDetail.label.replace.blocked.arrived": "A new return label is not possible because the goods have already arrived and neither “Still coming” nor a stray item has been recorded.",
  "page.returnDetail.label.replace.blocked.closed": "A new return label is not possible because the return is closed.",
  "page.returnDetail.label.replace.blocked.canceled": "A new return label is not possible because the return has been canceled.",
  "page.returnDetail.label.replace.blocked.declined": "A new return label is not possible because the return has been canceled.",
  "page.returnDetail.label.replace.blocked.notReady": "A new return label is only possible once the current label is ready.",
  "page.returnDetail.label.history": "Earlier labels",
  "page.returnDetail.label.historyEntry": "Label {number}: {tracking} · bought {bought} · replaced {replaced} ({reason})",
  "page.returnDetail.label.historyReason.expiredOrLost": "expired or lost",
  "page.returnDetail.label.historyReason.strayFollowup": "for the missing items after a stray item",
  "page.returnDetail.label.orderPending": "Ordering …",
  "page.returnDetail.portal.heading": "What the customer asked for",
  "page.returnDetail.portal.photoAlt": "Customer photo {number} for this item",
  "page.returnDetail.mail.attempts": "{count} attempts",
  "page.returnDetail.mail.delivered": "Delivered {when}",
  "page.returnDetail.mail.error": "Not delivered: {detail}",
  "page.shop.portal.heading": "Return portal",
  "page.shop.portal.notReady": "The portal opens as soon as the shop is connected.",
  "page.shop.portal.setup": "Read again from Shopify",
  "page.shop.portal.setupDone": "Re-read from Shopify.",
  "page.shop.portal.setupState": "The portal offers {reasons} return reasons and {methods} return shipping methods.",
  "page.shop.portal.setupExplained": "The reasons come from your Shopify library. You only need to read them again if you changed them there.",
  "page.shop.portal.setupFailed": "The setup could not be completed. Nothing was changed.",
  "page.returns.column.customer": "Customer",
  "page.returns.search.label": "Search",
  "page.returns.search.placeholder": "Number, name or email",
  "page.returns.search.from": "from",
  "page.returns.search.to": "until",
  "page.returns.search.submit": "Search",
  "page.returns.search.clear": "Clear filters",
  "page.returns.emptySearch": "Nothing matches “{term}”. The search covers order number, RMA, tracking number, customer name, e-mail, SKU and item name.",
  "page.returns.emptyRange": "No return was registered in this period.",
  "page.returns.emptyPage": "There is no page {page} for this.",
  "page.returns.emptyPageBack": "To the first page",
  "page.returns.pagination.heading": "Pages",
  "page.returns.pagination.total.one": "{count} return",
  "page.returns.pagination.total.other": "{count} returns",
  "page.returns.pagination.page": "Page {page} of {pages}",
  "page.returns.pagination.previous": "Previous",
  "page.returns.pagination.next": "Next",
  "page.returns.export.action": "Export",
  "page.returns.export.columnEmail": "E-mail",
  "page.returns.export.columnCurrency": "Currency",
  "page.returns.export.columnSynced": "Last synced",
  "page.returns.export.truncated.one": "Truncated: this file holds {shown} of {total} return. Narrow the date range to get the rest.",
  "page.returns.export.truncated.other": "Truncated: this file holds {shown} of {total} returns. Narrow the date range to get the rest.",
  "page.returns.export.needsRange": "The export needs a date range. Please fill in “Registered from” and “Registered until” in the returns list and export again.",
  "page.returns.export.needsRangeHint": "Export needs a date range (from and until).",
  "page.returnDetail.customer.heading": "Customer",
  "page.returnDetail.customer.name": "Name",
  "page.returnDetail.customer.email": "E-mail",
  "page.returnDetail.customer.zendesk": "search in Zendesk",
  "page.returnDetail.customer.address": "Shipping address",
  "page.returnDetail.customer.payment": "Payment method",
  "page.returnDetail.customer.discount": "Discount code",
  "page.returnDetail.browse.label": "Browse returns",
  "page.returnDetail.browse.previous": "Previous return",
  "page.returnDetail.browse.next": "Next return",
  "page.returnDetail.browse.nextReview": "Next review",
  "page.returnDetail.browse.inFiltered": "in the filtered list",
  "page.returnDetail.browse.inAll": "in the work list, newest first",
  "page.returnDetail.actionsHeading": "Actions",
  "page.returnDetail.cancel.head": "Cancel",
  "page.returnDetail.cancel.open": "Cancel return …",
  "page.returnDetail.cancel.consequences": "The return is ended in Shopify and cannot be reopened.",
  "page.returnDetail.cancel.usage": "The count is reversed: this return no longer costs you anything.",
  "page.returnDetail.cancel.mail": "Shopify sends no mail on cancellation. Whether your customer hears from us is your choice — the box below.",
  "page.returnDetail.cancel.label": "A return label you already bought stays valid and is not refunded. Anyone who uses it still sends you the parcel.",
  "page.returnDetail.cancel.requestAtShopify": "Shopify then shows “Declined”; retuno and the customer portal show “Cancelled”. Your customer only gets our email.",
  "page.returnDetail.cancel.notify": "Email the customer about the cancellation",
  "page.returnDetail.cancel.notifyHint": "The default comes from Settings → Customer emails. The email says the return is closed, quotes your reason if you give one, and tells the customer how to reach you.",
  "page.returnDetail.cancel.reason": "Reason for the customer (optional)",
  "page.returnDetail.cancel.reasonHint": "Appears word for word in the email and in the history. Up to {max} characters.",
  "page.returnDetail.cancel.submit": "Cancel for good",
  "page.returnDetail.cancel.done": "Cancelled. Shopify now shows the return as “Cancelled”, and the count is reversed.",
  "page.returnDetail.cancel.doneRequest": "Cancelled. Shopify shows the return as “Declined”.",
  "page.returnDetail.cancel.error.notCancelable": "This return can no longer be cancelled — it is already completed or cancelled. Nothing was changed.",
  "page.returnDetail.cancel.error.notAccepted": "This return cannot be cancelled: at least one item is stored and “not accepted”. Cancelling would release the quantity in Shopify, and the customer could register the same item again.",
  "page.returnDetail.cancel.error.stockBooked": "Not canceled: stock has already been booked for this return. Nothing was changed.",
  "page.returnDetail.cancel.error.failed": "Shopify refused the cancellation. Nothing changed on the return.",
  "page.returnDetail.cancel.error.inProgress": "Already running — a second click doesn’t cancel again.",
  "page.returnDetail.cancel.error.unclear": "Shopify didn’t answer — it’s unclear whether the return was canceled. Check the return in Shopify. If it’s still open there, the button works again after 15 minutes.",
  "page.returnDetail.cancel.pending": "Canceling …",
  "page.returnDetail.renew.hint": "A cancelled return cannot be reopened. The items have to be registered again.",
  "page.returnDetail.renew.open": "File a new return from this one",
  "page.returnDetail.message.heading": "Message to the customer",
  "page.returnDetail.message.to": "To",
  "page.returnDetail.message.subject": "Subject",
  "page.returnDetail.message.label": "Message",
  "page.returnDetail.message.hint": "Goes out as an email to your customer and stays on the return. The subject is set so your customer can tell which return it is about.",
  "page.returnDetail.message.submit": "Send message",
  "page.returnDetail.message.sent.sending": "The message is being sent — to {to}, {template}, submitted {when}.",
  "page.returnDetail.message.sent.retrying": "The message has not been sent yet — to {to}, {template}, submitted {when}. Sending did not work, retuno will try again shortly.",
  "page.returnDetail.message.sent.sent": "The message was sent — on {when} to {to}, {template}.",
  "page.returnDetail.message.sent.failed": "The message of {when} to {to} ({template}) could not be sent. Check the address and send it again.",
  "page.returnDetail.message.template.named": "template “{name}”",
  "page.returnDetail.message.template.none": "no template",
  "page.returnDetail.message.sentAgain": "This message was already on its way — it did not go out a second time.",
  "page.returnDetail.message.history.heading": "Already sent",
  "page.returnDetail.message.history.free": "Free message",
  "page.returnDetail.message.history.by": "by {name}",
  "page.returnDetail.message.history.status.sending": "being sent",
  "page.returnDetail.message.history.status.retrying": "not sent yet, retrying",
  "page.returnDetail.message.history.status.sent": "sent",
  "page.returnDetail.message.history.status.failed": "not sent",
  "page.returnDetail.message.alreadySent": "This template was already sent for this return: on {when} to {to}.",
  "page.returnDetail.message.resend": "Send again anyway",
  "page.returnDetail.message.error.empty": "A message without text says nothing. Write a sentence.",
  "page.returnDetail.message.error.noRecipient": "No email address is on file for this order — there is nobody this could go to.",
  "mail.merchantMessage.subject": "About your return {rma}",
  "chronicle.mail.merchantMessage": "Message to the customer",
  "page.returnDetail.message.macro.label": "Template",
  "page.returnDetail.message.macro.none": "No template",
  "page.returnDetail.message.macro.damaged": "Damaged / disputed return",
  "page.returnDetail.message.macro.stray": "Stray item (not ours)",
  "page.returnDetail.message.macro.defect": "Defect – replacement",
  "page.returnDetail.message.macro.defectCredit": "Defect – store credit",
  "page.returnDetail.message.macro.defectMulti": "Defect – replacement – several items",
  "page.returnDetail.message.macro.wrongItem": "Wrong item – no return shipment",
  "page.returnDetail.message.macro.wrongItemMulti": "Wrong item – replacement – several items",
  "page.returnDetail.message.macro.wrongItemCredit": "Wrong item – store credit",
  "page.returnDetail.message.macro.wrongItemReturnFirst": "Wrong item – return before reshipment",
  "page.returnDetail.message.macro.withdrawalExpired": "Withdrawal period",
  "page.returnDetail.message.macro.withdrawalGoodwill": "Withdrawal period – goodwill acceptance",
  "page.returnDetail.message.macro.folder.withdrawal": "Withdrawal period",
  "page.returnDetail.message.macro.folder.defect": "Defect",
  "page.returnDetail.message.macro.folder.damaged": "Disputed return",
  "page.returnDetail.message.macro.folder.wrongItem": "Wrong item",
  "page.returnDetail.message.macro.folder.stray": "Stray item",
  "page.returnDetail.message.macro.apply": "Insert template",
  "page.returnDetail.message.macro.hint": "Fills in subject and message. You can change the text afterwards – what is in the field is what goes out. You set the wording of the templates under Settings → Wording.",
  "page.returnDetail.message.photos.heading": "Photos as attachments",
  "page.returnDetail.message.photos.desk": "Photo from the intake desk, {taken} ({size})",
  "page.returnDetail.message.photos.customer": "Customer’s photo, {taken} ({size})",
  "page.returnDetail.message.photos.total": "Together {size} of at most {limit}.",
  "page.returnDetail.message.photos.tooLarge": "Together {size} – more than the allowed {limit}. Choose fewer photos, otherwise the message will not go out.",
  "page.returnDetail.message.error.photoUnknown": "A selected photo does not belong to this return. Reload the page and choose the photos again.",
  "page.returnDetail.message.error.photosTooLarge": "The selected photos are too large together for one email. Choose fewer photos.",
  "page.returnDetail.message.error.alreadySent": "This template was already sent. Tick “Send again anyway” if it should go out once more.",
  "mail.merchantMessage.macroDamagedSubject": "Your return {rma}",
  "mail.merchantMessage.macroDamagedBody": "Hi {firstName},\n\nwe have checked your return {rma}. Unfortunately we cannot accept the item in the condition in which it reached us. You will find a photo attached.\n\nPlease let us know briefly how you would like to proceed.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroStraySubject": "Your return {rma}",
  "mail.merchantMessage.macroStrayBody": "Hi {firstName},\n\nin your return {rma} we found an item that is not from our range. You will find a photo attached.\n\nPlease let us know briefly what should happen to the item.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroDefectSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroDefectBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry about the defect: {article}.\n\nWe will send you a replacement free of charge. You do not need to send the defective item back.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroDefectCreditSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroDefectCreditBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry about the defect: {article}.\n\nWe have added store credit to your customer account. You do not need to send the defective item back.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroDefectMultiSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroDefectMultiBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry about the defect: {article}.\n\nWe will send you a replacement free of charge. You do not need to send the defective item back.\n\nPlease send the remaining items of your return back to us as usual – we will process them as soon as they have arrived.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWrongItemSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWrongItemBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry that you received the wrong item.\n\nWe will send you the right item free of charge. You do not need to send the wrongly delivered item back.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWrongItemMultiSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWrongItemMultiBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry that you received the wrong item.\n\nWe will send you the right item free of charge. You do not need to send the wrongly delivered item back.\n\nPlease send the remaining items of your return back to us as usual – we will process them as soon as they have arrived.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWrongItemCreditSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWrongItemCreditBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry that you received the wrong item.\n\nWe have added store credit to your customer account. You do not need to send the wrongly delivered item back.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWrongItemReturnFirstSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWrongItemReturnFirstBody": "Hi {firstName},\n\nwe have processed your return request for order {order}. We are sorry that you received the wrong item.\n\nPlease send the wrongly delivered item back to us. As soon as it has arrived, we will send you the right item free of charge.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWithdrawalExpiredSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWithdrawalExpiredBody": "Hi {firstName},\n\nwe have looked at your return for order {order}. Unfortunately, the withdrawal period for your order has already expired.\n\nYour order was delivered in full on {deliveredDate}. The withdrawal period therefore ended on {windowEnd}. Your return registration only reached us on {registeredDate}.\n\nWe are therefore unfortunately unable to accept the return as usual or refund the purchase price. We are happy to offer you two options:\n\n• Free return shipping: We will send your items back to you free of charge.\n\n• Store credit: Alternatively, as a goodwill gesture, we will issue you store credit for the value of the goods. The credit cannot be paid out.\n\nJust let us know which option you prefer.\n\nBest regards\n{shop}",
  "mail.merchantMessage.macroWithdrawalGoodwillSubject": "Your return request for order {order}",
  "mail.merchantMessage.macroWithdrawalGoodwillBody": "Hi {firstName},\n\nthank you for your return request for order {order}. Unfortunately, the withdrawal period for your order has already expired.\n\nYour order was delivered in full on {deliveredDate}. The withdrawal period therefore ended on {windowEnd}. Your return registration only reached us on {registeredDate}.\n\nEven though we would no longer have to accept the return as usual, we would like to meet you halfway: we are accepting your return as a goodwill gesture.\n\nYou can send your items back to us as planned. As soon as they have arrived and been checked, we will continue to process your return as registered.\n\nBest regards\n{shop}",
  "chronicle.mail.merchantMacroDamaged": "Template “Damaged” sent to the customer",
  "chronicle.mail.merchantMacroStray": "Template “Stray item” sent to the customer",
  "chronicle.mail.merchantMacroDefect": "Template “Defect – replacement” sent to the customer",
  "chronicle.mail.merchantMacroDefectCredit": "Template “Defect – store credit” sent to the customer",
  "chronicle.mail.merchantMacroDefectMulti": "Template “Defect – replacement – several items” sent to the customer",
  "chronicle.mail.merchantMacroWrongItem": "Template “Wrong item – no return shipment” sent to the customer",
  "chronicle.mail.merchantMacroWrongItemMulti": "Template “Wrong item – replacement – several items” sent to the customer",
  "chronicle.mail.merchantMacroWrongItemCredit": "Template “Wrong item – store credit” sent to the customer",
  "chronicle.mail.merchantMacroWrongItemReturnFirst": "Template “Wrong item – return before reshipment” sent to the customer",
  "chronicle.mail.merchantMacroWithdrawalExpired": "Template “Withdrawal period” sent to the customer",
  "chronicle.mail.merchantMacroWithdrawalGoodwill": "Template “Withdrawal period – goodwill acceptance” sent to the customer",
  "http.payloadTooLarge": "The file is too large — up to {megabytes} MB is accepted here. Use your browser's back button and choose a smaller photo.",
  "intake.event.canceled": "Return cancelled",
  "intake.event.declined": "Return cancelled",
  "intake.event.evaluationOverridden": "Evaluation overridden",
  "intake.event.withdrawn": "Cancelled by the customer",
  "intake.event.requestApproved": "Request accepted",
  "intake.event.merchantLabelGranted": "Return label released after review",
  "intake.event.exchangeTargetOverridden": "Exchange wish changed",
  "intake.event.exchangeTargetCleared": "Changed exchange wish withdrawn",
  "intake.event.exchangeTargetApplied": "Exchange item switched in Shopify",
  "intake.event.exchangeTargetNotApplied": "Exchange item NOT switched in Shopify",
  "intake.event.exchangeTargetNotAppliedWhy.noScope": "retuno may not change the order in Shopify — the app lacks the permission for it. Switch the exchange item in Shopify yourself. Whoever manages the app in the shop can approve the missing permission.",
  "intake.event.exchangeTargetNotAppliedWhy.notReleased": "Not all exchanged items are processed in Shopify — usually because not all were counted as “OK” at the intake desk. retuno only switches once all items are processed. If the new item should apply anyway, switch it in Shopify yourself.",
  "intake.event.exchangeTargetNotAppliedWhy.held": "Shopify is holding the exchange item, usually because the additional payment is still missing. As soon as it has arrived in full, retuno releases the shipment and switches the item. If someone releases it directly in Shopify, retuno still switches the item as long as it has not shipped yet.",
  "intake.event.exchangeTargetNotAppliedWhy.outOfStock": "The new exchange item is not available in Shopify, and the stock check at the intake desk is on. Switch it in Shopify yourself once it is back, or talk to the customer about a different item.",
  "intake.event.exchangeTargetNotAppliedWhy.delta": "With the new item, the order's outstanding amount would change (by {difference}). retuno only switches without a change in money — switch the item in Shopify yourself and settle the difference there.",
  "intake.event.exchangeTargetNotAppliedWhy.deltaNoAmount": "With the new item, the order's outstanding amount would change. retuno only switches without a change in money — switch the item in Shopify yourself and settle the difference there.",
  "intake.event.exchangeTargetNotAppliedWhy.shopifyRefused": "Shopify refused the change; nothing was changed on the order. Switch the item in Shopify yourself.",
  "intake.event.exchangeTargetNotAppliedWhy.noLine": "retuno cannot clearly find the exchange line in the Shopify order — it may already have been changed there. Check the order in Shopify and switch the item there yourself.",
  "intake.event.exchangeTargetNotAppliedWhy.unconfirmed": "It is unclear whether the switch reached Shopify. Check in Shopify whether the new item is in the order — retuno will not try again.",
  "intake.event.exchangeTargetNotAppliedWhy.shipped": "The exchange item has already shipped in Shopify — retuno no longer switches it.",
  "intake.event.exchangeTargetNotAppliedWhy.severalUnits": "This exchange wish covers several items. retuno only changes a single item — please change it in Shopify yourself.",
  "intake.event.targetEditFailed": "Change not applied: Shopify still has {registered} instead of {current} — please change it by hand in Shopify.",
  "intake.event.targetEditUnclear": "Change unclear: it is not certain whether {current} instead of {registered} reached Shopify — please check in Shopify and change it by hand if needed.",
  "intake.event.exchangeHoldReleased": "Shipment released",
  "intake.event.exchangeHoldReleasedAutomatic": "Additional payment received in full — shipment released by retuno",
  "intake.event.exchangeHoldReleasedExternal": "Shipment released in Shopify — detected by retuno",
  "intake.event.exchangeHoldReleasedReplacement": "Shopify had held the replacement because an amount is open on the order. retuno released it and sent no invoice. The open amount does not belong to this replacement — please check in Shopify.",
  "intake.event.exchangeHoldReleaseFailed": "Shipment NOT released",
  "intake.event.exchangeHoldReleaseFailedWhy.rejected": "Shopify rejected the release. retuno tries again on the next run; the reason is on the fulfillment order in the Shopify admin.",
  "intake.event.exchangeHoldReleaseFailedWhy.unattributed": "retuno cannot match this return's exchange item in Shopify and therefore does not release on its own.",
  "intake.event.exchangeHoldReleaseFailedWhy.replacement": "Shopify holds the replacement because an amount is open on the order, and refused the release. retuno sent no invoice. Release it in Shopify on the fulfillment order with “Release hold”.",
  "intake.event.exchangeRemovedOnReject": "Held exchange removed on rejection — Shopify shows the amount open in the customer’s favour",
  "intake.event.exchangeConvertedToRefund": "Exchange changed to refund",
  "intake.event.exchangeConvertedToStoreCredit": "Exchange changed to store credit",
  "intake.event.settlementChangedToStoreCredit": "Settlement changed to store credit",
  "intake.event.settlementChangedToRefund": "Settlement changed to refund",
  "intake.event.renewedAs": "Re-created for the exchange as {rma}",
  "intake.event.renewedFrom": "Re-created from {rma} — the customer wants an exchange after all",
  "intake.event.goodwillOrder": "Goodwill exchange: replacement order created",
  "intake.event.goodwillOrderRefused": "Goodwill exchange: Shopify did not create the replacement order",
  "intake.event.exchangeRemovedAtClose": "Exchange removed from the return at close — refunded to the original payment method",
  "intake.event.exchangeRemovedAtCloseAsPaidCredit": "Exchange removed from the return at close — credited as store credit (the original payment method)",
  "intake.event.exchangeRemovedAtCloseRejected": "Exchange removed from the return at close — not accepted, nothing refunded",
  "intake.event.exchangeRemovedAtCloseRejectedAsPaidCredit": "Exchange removed from the return at close — not accepted, nothing credited",
  "page.returnDetail.timeline.heading": "Progress",
  "page.returnDetail.timeline.requested": "Registered",
  "page.returnDetail.timeline.arrived": "Arrived",
  "page.returnDetail.timeline.inspected": "Inspected",
  "page.returnDetail.timeline.stored": "Stored",
  "page.returnDetail.timeline.notStored": "Not stored",
  "page.returnDetail.timeline.storedSome": "{stocked} of {total} stored",
  "page.returnDetail.timeline.closed": "Completed",
  "page.returnDetail.timeline.canceled": "Cancelled",
  "page.returnDetail.timeline.done": "done",
  "page.returnDetail.timeline.open": "open",
  "page.returnDetail.timeline.notNeeded": "not needed",
  "page.returnDetail.orderHeading": "Order",
  "page.returnDetail.column.barcode": "EAN",
  "page.returnDetail.column.review": "Review",
  "page.returnDetail.review.unreviewed": "Not reviewed",
  "page.returnDetail.review.confirmed_defect": "Defect confirmed",
  "page.returnDetail.review.not_defect": "Not a defect",
  "page.returnDetail.review.on_site_check": "Check on site",
  "page.returnDetail.review.confirmed_wrong_item": "Wrong item confirmed",
  "page.returnDetail.review.not_wrong_item": "Not a wrong item",
  "page.returnDetail.review.select": "Review: {title}",
  "page.returnDetail.review.save": "Save review",
  "page.returnDetail.review.saveFor": "Save review: {title}",
  "page.returnDetail.review.hintConfirmed": "“Defect confirmed”: label costs are not deducted, photos are saved in the defect collection.",
  "page.returnDetail.review.hintNotDefect": "“Not a defect”: the label is charged",
  "page.returnDetail.review.hintOnSite": "“Check on site”: the decision on the label fee is made on site, defect still unclear",
  "page.returnDetail.review.customerContacted": "Customer contacted",
  "page.returnDetail.review.onSiteNoLabel": "There is no return label from retuno for this return yet. Without a label, no fee is charged for “Fine”.",
  "page.returnDetail.review.done": "Review saved; the evaluation was recalculated.",
  "page.returnDetail.review.doneStale": "Review saved. The evaluation was not recalculated — re-evaluate before releasing.",
  "page.returnDetail.review.error.unknown": "The review was not saved: unknown line or state.",
  "page.returnDetail.review.error.notOffered": "The review was not saved: this line has no review, its reason does not call for one. Setting it back to “Not reviewed” is always possible.",
  "page.returnDetail.review.error.damaged": "The review was not saved: this line is counted as “Damaged”, a defect does not apply here. Setting it back to “Not reviewed” is always possible.",
  "page.returnDetail.column.wish": "Customer's request",
  "page.returnDetail.rulesNotesHeading": "Notes",
  "page.returnDetail.exchangeTarget": "Exchange for:",
  "page.returnDetail.exchangeRelease.done": "{released} released to shipping",
  "page.returnDetail.exchangeSwitched": "switched in Shopify on {date}",
  "page.returnDetail.exchangeSwitchUnconfirmed": "Switch in Shopify not confirmed — check in Shopify",
  "page.returnDetail.whyThisAmount": "Why this amount?",
  "page.returnDetail.windowMailCheck": "Check first whether the customer already contacted you by email before the deadline — if so, they withdrew in time.",
  "page.returnDetail.exchangeOnly.one": "Exchange only, {count} exchange line — nothing is refunded.",
  "page.returnDetail.exchangeOnly.other": "Exchange only, {count} exchange lines — nothing is refunded.",
  "page.returnDetail.diagnose.title": "Technical details",
  "page.returnDetail.diagnose.back": "Back to the return",
  "page.adminOperations.title": "Operations & privacy",
  "page.adminOperations.hubHint": "Data requests, the access log, and whether the machinery behind it is running.",
  "page.adminOperations.acknowledge.submit": "Mark as done (do not rebook)",
  "page.adminOperations.acknowledge.question": "The job will not be rebooked and disappears from the notice. Only use this if you don't need it (e.g. a test order).",
  "page.adminOperations.acknowledge.confirm": "Yes, do not rebook",
  "page.adminOperations.acknowledge.done": "Marked as done. Nothing was rebooked.",
  "page.adminOperations.acknowledge.confirmMissing": "Nothing marked: please tick “Yes, do not rebook”.",
  "page.adminOperations.acknowledge.notOpen": "Nothing marked: this job is no longer open (already marked or has run since).",
  "page.adminOperations.acknowledge.bookingNotRefused": "Nothing marked: for this booking it is unclear whether the ERP booked it. Someone has to check that first.",
  "page.adminOperations.privacy.heading": "A customer wants their data erased",
  "page.adminOperations.privacy.intro": "If a customer asks you directly to erase their data — by email, by letter — you start it here. If the request arrives through Shopify, the same thing happens automatically. Erasure covers all eight places where retuno holds customer data.",
  "page.adminOperations.privacy.emailLabel": "Email address of the data subject",
  "page.adminOperations.privacy.emailHint": "The same address as on the order. Every return of that person in your shop is found.",
  "page.adminOperations.privacy.confirm": "I understand that this erasure cannot be undone.",
  "page.adminOperations.privacy.submit": "Erase this person's data",
  "page.adminOperations.privacy.queued": "The erasure is queued. Once it has run, the result appears in the table below.",
  "page.adminOperations.privacy.invalid": "Please enter an email address and confirm the erasure.",
  "page.adminOperations.privacy.noShop": "No shop is connected to this account — there is nothing to erase.",
  "page.adminOperations.privacy.requestsHeading": "Requests from your customers",
  "page.adminOperations.privacy.requestsEmpty": "No access or erasure request so far.",
  "page.adminOperations.privacy.requestsCaption": "Access and erasure requests",
  "page.adminOperations.privacy.column.kind": "What was asked for",
  "page.adminOperations.privacy.column.subject": "Data subject",
  "page.adminOperations.privacy.column.status": "State",
  "page.adminOperations.privacy.column.due": "Due by",
  "page.adminOperations.privacy.column.result": "Outcome",
  "page.adminOperations.privacy.kind.customer_redact": "Erasure of their data",
  "page.adminOperations.privacy.kind.shop_redact": "Erasure of all shop data",
  "page.adminOperations.privacy.kind.data_request": "A copy of their data",
  "page.adminOperations.privacy.state.open": "open",
  "page.adminOperations.privacy.state.done": "done",
  "page.adminOperations.privacy.state.failed": "failed",
  "page.adminOperations.privacy.doneOn": "done on {date}",
  "page.adminOperations.privacy.download": "Download the record",
  "page.adminOperations.dataRequest.heading": "A customer wants a copy of their data",
  "page.adminOperations.dataRequest.intro": "If a customer asks you directly — by email, by letter — which data retuno holds about them, you start the request here. If the request arrives through Shopify, the same thing happens automatically. Once it has run, you download the copy as a file from the table below and send it to the customer. Nothing is erased.",
  "page.adminOperations.dataRequest.submit": "Prepare a copy",
  "page.adminOperations.dataRequest.queued": "The copy is queued. Once it has run, it is ready to download in the table below.",
  "page.adminOperations.dataRequest.invalid": "Please enter an email address.",
  "page.adminOperations.accessLog.heading": "Who looked at customer data",
  "page.adminOperations.accessLog.intro": "Who opened a customer card, who fetched a photo, who viewed, searched or downloaded the returns list as CSV, what a retention period deleted. For the list, the search and the download it only records how many returns were visible, never a customer name.",
  "page.adminOperations.accessLog.empty": "No entry yet.",
  "page.adminOperations.accessLog.export": "Whole log as CSV",
  "export.accessLog.truncated": "Truncated: the {limit} most recent rows only. Older entries are still in the log.",
  "page.adminOperations.accessLog.caption": "Privacy-relevant events",
  "page.adminOperations.accessLog.column.when": "When",
  "page.adminOperations.accessLog.column.who": "Who",
  "page.adminOperations.accessLog.column.action": "Event",
  "page.adminOperations.accessLog.column.detail": "Details",
  "page.adminOperations.bonusWaiting.heading": "Store credit bonuses waiting for you",
  "page.adminOperations.bonusWaiting.lead": "{count} store credit bonus(es) are waiting for a decision — they will not resolve on their own. Please check the customer's balance in the Shopify admin and decide on the return.",
  "page.returns.jobsBanner": "Processing reports a problem. Take a look under Administration → Operations & privacy.",
  "page.returns.jobsBannerNoAdmin": "Processing reports a problem. Please let someone know who has the “Administration” permission.",
  "intake.state.announced": "Not in the warehouse yet",
  "intake.state.arrived": "Arrived",
  "intake.state.inspected": "Inspected",
  "intake.state.stored": "Put away",
  "intake.outcome.received": "OK",
  "intake.outcome.damaged": "Damaged",
  "intake.outcome.missing": "Missing",
  "intake.outcome.rejected": "Not accepted",
  "intake.outcome.rejectedDamaged": "Damaged",
  "intake.outcome.accepted": "Accepted after all",
  "intake.outcome.openedAccepted": "Opened, accepted without deduction",
  "intake.outcome.goodwillCredit": "Goodwill store credit",
  "intake.outcome.sendBack": "Send-back",
  "intake.outcome.opened": "Opened",
  "intake.outcome.wrongItem": "Wrong item (arrived: {arrived})",
  "intake.event.arrived": "Parcel booked in",
  "intake.event.lineRecorded": "Item checked",
  "intake.event.lineReset": "Item reset",
  "intake.event.lineRecordedNamed": "{article} checked",
  "intake.event.lineResetNamed": "{article} reset",
  "intake.event.shortfallAfterRefund": "Fewer items arrived than were refunded — clarification opened (arrived/refunded · paid value of the gap)",
  "intake.event.shortfallAfterRefundAsPaidCredit": "Fewer items arrived than were credited — clarification opened (arrived/credited · paid value of the gap)",
  "intake.event.shortfallAfterRefundAtLeast": "Fewer items arrived than were refunded — clarification opened (arrived/refunded · paid value of the gap, a lower bound: the tiered discount was not recalculated)",
  "intake.event.shortfallAfterRefundAtLeastAsPaidCredit": "Fewer items arrived than were credited — clarification opened (arrived/credited · paid value of the gap, a lower bound: the tiered discount was not recalculated)",
  "intake.event.unitsMissing": "Items missing — left open at Shopify, clarification opened",
  "intake.event.unitsMissingExchangeWithheld": "Items missing — exchange item withheld, clarification opened",
  "intake.event.unitsMissingStray": "Stray item — registered items missing, left open at Shopify, clarification opened",
  "intake.event.unitsMissingStrayExchangeWithheld": "Stray item — registered items missing, exchange item withheld, clarification opened",
  "intake.event.exchangeWithheld": "Exchange item withheld, clarification opened",
  "intake.event.strayRecorded": "Recorded as stray item — the registered item is missing, other goods arrived instead",
  "intake.event.labelSkippedArrived": "No return label bought — the goods have already arrived",
  "intake.event.labelReplaced": "New return label requested",
  "intake.event.labelFailed": "The return label could not be created — clarification opened",
  "intake.event.labelFailedNoRoute": "No label: no shipping route is set up for this country — clarification opened",
  "intake.event.labelFailedNotConfigured": "No label: shipping is not set up — clarification opened",
  "intake.event.labelFailedBusy": "No label: one was already being created — clarification opened",
  "intake.warningShort.access_blocked": "order on the block list",
  "intake.warningShort.clarification_open": "clarification case open",
  "intake.warningShort.delivery_date_missing": "delivery date missing",
  "intake.warningShort.window_expired": "return window expired",
  "intake.warningShort.exchange_window_expired": "exchange right expired",
  "intake.warningShort.defect_refund_window_expired": "refund for a defect: period expired",
  "intake.warningShort.defect_refund_window_expiredAsPaidCredit": "store credit for a defect: period expired",
  "intake.warningShort.defect_window_expired": "defect: warranty expired",
  "intake.warningShort.order_outstanding": "order not fully paid",
  "intake.warningShort.intake_units_missing": "items not arrived",
  "intake.warningShort.unmatched_returned_line": "item not matched to the order",
  "intake.warningShort.unmatched_exchanged_line": "exchange item not matched to the order",
  "intake.warningShort.exchange_no_target": "exchange without target item",
  "intake.warningShort.exchange_price_unknown": "price of the target item unknown",
  "intake.warningShort.exchange_returned_unknown": "exchange without returned item",
  "intake.warningShort.exchange_same_variant_reason": "replacement without a matching reason",
  "intake.warningShort.replaced_exchange_unverified": "exchange change not traceable",
  "intake.warningShort.exchange_units_uncounted": "exchange items not arrived",
  "intake.warningShort.exchange_rejected_partial": "Exchange partly not accepted",
  "intake.warningShort.exchange_policy_blocked": "exchange not allowed by the rules",
  "intake.warningShort.exchange_value_exceeds_suggestion": "goods value above Shopify’s value",
  "intake.warningShort.exchange_value_below_suggestion": "goods value below Shopify’s value",
  "intake.warningShort.exchange_chain_refund_customer": "exchange: customer not reliably the same",
  "intake.warningShort.exchange_chain_refund_own_payment": "exchange: money in two orders",
  "intake.warningShort.exchange_chain_refund_multi_step": "exchange across several steps",
  "intake.warningShort.exchange_chain_refund_exceeds": "exchange: rest in original too small",
  "intake.warningShort.amount_below_suggestion": "amount differs from Shopify",
  "intake.warningShort.unknown_discount_code": "unknown discount code",
  "intake.warningShort.exchange_lines_present": "exchange on the return",
  "intake.warningShort.refund_exceeds_open": "amount above the open amount",
  "intake.warningShort.open_exceeds_net_payment": "open above the net payment",
  "intake.warningShort.withheld_before_exceeds_open": "more withheld than open",
  "intake.warningShort.withheld_before_foreign_refund": "refund outside retuno",
  "intake.warningShort.withheld_before_foreign_refundAsCredit": "store credit outside retuno",
  "intake.warningShort.refund_without_returned_units": "money without a return",
  "intake.warningShort.access_line_blocked": "item blocked by settings",
  "intake.warningShort.partial_booking_before": "partly refunded before",
  "intake.warningShort.partial_booking_beforeAsCredit": "partly credited before",
  "intake.warningShort.delivery_date_assumed": "delivery date assumed",
  "intake.warningShort.uncoded_discount": "discount without code",
  "intake.warningShort.free_item_below_zero": "free item costs more than the refund",
  "intake.warningShort.free_item_below_zeroAsCredit": "free item costs more than the store credit",
  "intake.warningShort.exchange_additional_payment": "exchange with additional payment",
  "intake.warningShort.replaced_exchange_total_mismatch": "exchange change does not add up",
  "intake.warningShort.exchange_stock_unchecked": "stock not checked",
  "intake.warningShort.exchange_price_drop_kept": "target item cheaper, shop keeps the difference",
  "intake.warningShort.exchange_price_drop_settled": "target item cheaper, customer gets the difference",
  "intake.warningShort.shipping_refund_applied": "shipping costs refunded too",
  "intake.warningShort.shipping_refund_appliedAsCredit": "shipping costs credited too",
  "intake.warningShort.mixed_settlement": "refund and store credit mixed",
  "intake.warningShort.sibling_returned_exceeds_ordered": "more returned than ordered",
  "intake.warningShort.no_refundable_lines": "no refund included",
  "intake.warningShort.above_auto_limit": "above the automatic limit",
  "intake.warningShort.amount_exceeds_suggestion": "amount above Shopify’s value",
  "intake.warningShort.store_credit_bonus_applied": "store credit bonus granted",
  "intake.warningShort.store_credit_bonus_unsettled": "store credit bonus not settled",
  "intake.warningShort.refunded_total_disagrees": "Shopify’s refund figures disagree",
  "intake.warningShort.refunded_total_disagreesAsCredit": "Shopify’s store credit figures disagree",
  "intake.warningShort.taxes_excluded": "prices without tax",
  "intake.warningShort.presentment_currency_differs": "customer paid in another currency",
  "intake.warningShort.refunded_total_uncertain": "refunds not fully readable",
  "intake.warningShort.refunded_total_uncertainAsCredit": "store credits not fully readable",
  "intake.warningShort.label_waiver_never_matches": "label fee exception never applies",
  "intake.warningShort.recomputation_without_strategy": "recalculation without discount type",
  "intake.warningShort.unrecognized": "other note",
  "intake.event.missingWrittenOff": "Missing items removed from the return — Shopify no longer expects them, the exchange item will not be made",
  "intake.event.exchangeReleasedDefect": "Exchange item released afterwards — defect confirmed",
  "intake.event.closedDefectWithoutReturn": "Closed without return shipment – defect confirmed, replacement released",
  "intake.event.closedWrongItemWithoutReturn": "Closed without return shipment – wrong item confirmed, replacement released",
  "intake.event.closedDefectWithoutReturnPartial": "Replacement released in advance – defect confirmed, the rest of the return stays open",
  "intake.event.closedWrongItemWithoutReturnPartial": "Replacement released in advance – wrong item confirmed, the rest of the return stays open",
  "intake.event.closedWrongItemComesBack": "Replacement sent in advance – wrong item confirmed, the customer sends the wrong item back",
  "intake.event.exchangeRemovedOnSendBack": "Exchange item removed from the return — the goods go back to the customer",
  "intake.withheld.missing": "missing",
  "intake.withheld.damaged": "damaged",
  "intake.withheld.rejected": "not accepted",
  "intake.withheld.uncounted": "not counted yet",
  "intake.withheld.review": "waiting for approval",
  "intake.withheld.noEvaluation": "not calculated yet",
  "intake.event.photoAdded": "Photo taken with a phone",
  "intake.event.photoAttached": "Image attached to the case",
  "intake.photo.label": "Image for the case (optional)",
  "intake.photo.hint": "A photo of the return slip or of the note that was in the parcel — for example a handwritten change of the exchange wish. It goes into the case's chronicle, not into the customer photos, and is deleted after 180 days.",
  "intake.photo.limit": "Up to {size} per photo.",
  "intake.photo.preparing": "Preparing photo …",
  "intake.photo.done": "The image is now attached to the case — it is in the chronicle.",
  "intake.photo.doneMany": "The images are now attached to the case — they are in the chronicle.",
  "intake.photoQr.open": "Photo by phone …",
  "intake.photoQr.hint": "Scan the code with your phone and photograph the return slip or the note from the parcel. The photo then appears in the chronicle as an image for this return. The code is valid for 30 minutes.",
  "intake.photo.error.tooLarge": "The image is too large. Choose a smaller file — the limit is set in the portal settings.",
  "intake.photo.error.empty": "The file arrived empty or damaged. Choose it again.",
  "intake.photo.error.unsupported": "This file is not an image we accept. Allowed are JPEG, PNG, WebP and HEIC.",
  "intake.photo.error.tooMany": "Too many photos at once. Send the rest afterwards.",
  "intake.event.noteAdded": "Note",
  "intake.event.clarificationOpened": "Marked for clarification",
  "intake.event.clarificationByHandDamaged": "Opened by hand — counted when opened: damaged",
  "intake.event.clarificationByHandMissing": "Opened by hand — counted when opened: missing",
  "intake.event.clarificationByHandDamagedMissing": "Opened by hand — counted when opened: damaged — missing",
  "intake.event.clarificationByHandNothingCounted": "Opened by hand — nothing was counted as damaged or missing when it was opened",
  "intake.event.clarificationByHandNoReason": "Opened by hand, no reason recorded",
  "intake.clarificationBox.damaged": "Item damaged",
  "intake.clarificationBox.missing": "Item missing",
  "intake.clarificationBox.damagedMissing": "Item damaged and missing",
  "intake.event.clarificationWithheldLabel": "Clarification opened — no instant label",
  "intake.event.clarificationWindowExpired": "Withdrawal period exceeded — registered after the period ended, clarification opened",
  "intake.event.clarificationExchangeWindowExpired": "Exchange right exceeded — registered after the right ended, clarification opened",
  "intake.event.damagedReview": "Damaged — check with the customer, clarification opened",
  "intake.event.packSplitExchangeReview": "Opened pair in a bundle, the customer wants an exchange — clarification opened",
  "intake.event.closeFailed": "Completion failed: {reason}. The return is not completed; no money and no exchange were triggered.",
  "intake.event.closeUnclear": "Completion unclear: retuno does not know for sure whether Shopify has already processed the completion. Please check in Shopify whether the refund and the exchange went through — do not complete again.",
  "intake.event.closeUnclearAsPaidCredit": "Completion unclear: retuno does not know for sure whether Shopify has already processed the completion. Please check in Shopify whether the store credit and the exchange went through — do not complete again.",
  "intake.event.openedExchangeReview": "Opened hygiene item, the customer wants an exchange — clarification case opened",
  "intake.event.hygieneRefundReview": "Opened hygiene item, the customer wants a refund — clarification case opened",
  "intake.event.hygieneRefundReviewAsPaidCredit": "Opened hygiene item, the customer wants their money back (as store credit) — clarification case opened",
  "intake.event.hygieneReviewMany": "Opened or damaged items — clarification case opened",
  "intake.decisionLine.bundleExchange": "{article} · {opened} of {pairs} pairs opened · exchange requested",
  "intake.decisionLine.bundleRefund": "{article} · {opened} of {pairs} pairs opened · refund requested",
  "intake.decisionLine.bundleRefundAsPaidCredit": "{article} · {opened} of {pairs} pairs opened · store credit requested",
  "intake.decisionLine.bundleCredit": "{article} · {opened} of {pairs} pairs opened · store credit requested",
  "intake.decisionLine.bundleRefundDefect": "{article} · {opened} of {pairs} pairs opened, {defect} of them defective · refund requested",
  "intake.decisionLine.bundleRefundDefectAsPaidCredit": "{article} · {opened} of {pairs} pairs opened, {defect} of them defective · store credit requested",
  "intake.decisionLine.bundleCreditDefect": "{article} · {opened} of {pairs} pairs opened, {defect} of them defective · store credit requested",
  "intake.decisionLine.unitsExchange.one": "{article} · {opened} of {count} piece opened · exchange requested",
  "intake.decisionLine.unitsExchange.other": "{article} · {opened} of {count} pieces opened · exchange requested",
  "intake.decisionLine.unitsRefund.one": "{article} · {opened} of {count} piece opened · refund requested",
  "intake.decisionLine.unitsRefundAsPaidCredit.one": "{article} · {opened} of {count} piece opened · store credit requested",
  "intake.decisionLine.unitsRefund.other": "{article} · {opened} of {count} pieces opened · refund requested",
  "intake.decisionLine.unitsRefundAsPaidCredit.other": "{article} · {opened} of {count} pieces opened · store credit requested",
  "intake.decisionLine.unitsCredit.one": "{article} · {opened} of {count} piece opened · store credit requested",
  "intake.decisionLine.unitsCredit.other": "{article} · {opened} of {count} pieces opened · store credit requested",
  "intake.decisionLine.openedExchange": "{article} · opened · exchange requested",
  "intake.decisionLine.openedRefund": "{article} · opened · refund requested",
  "intake.decisionLine.openedRefundAsPaidCredit": "{article} · opened · store credit requested",
  "intake.decisionLine.openedCredit": "{article} · opened · store credit requested",
  "intake.decisionLine.damaged": "{article} · damaged",
  "intake.event.clarificationResolved": "Clarification resolved",
  "intake.event.clarificationResolvedByRefund": "Clarification resolved — with the refund",
  "intake.event.clarificationResolvedByRefundAsPaidCredit": "Clarification resolved — with the store credit",
  "intake.event.clarificationResolvedByCancel": "Clarification resolved — with the cancellation",
  "intake.event.clarificationResolvedByEnd": "Clarification resolved — return ended",
  "intake.event.clarificationResolvedBySendBack": "Clarification resolved — with the return shipment",
  "intake.event.clarificationResolvedByDisposal": "Clarification resolved — completed without action",
  "intake.event.clarificationResolvedByAcceptance": "Clarification resolved — accepted after all",
  "intake.event.clarificationResolvedByReset": "Clarification resolved — with the reset",
  "intake.event.clarificationResolvedByPackSplitRefund": "Clarification resolved — converted to a refund",
  "intake.event.clarificationResolvedByPackSplitStoreCredit": "Clarification resolved — converted to store credit",
  "intake.event.clarificationResolvedByPackSplitDeclined": "Clarification resolved — exchange declined, no refund",
  "intake.event.clarificationResolvedByPackSplitKept": "Clarification resolved — exchange kept despite opened pairs",
  "intake.event.clarificationResolvedByOpenedRefund": "Clarification resolved — converted to a refund, without a deduction for opening",
  "intake.event.clarificationResolvedByOpenedStoreCredit": "Clarification resolved — converted to store credit, without a deduction for opening",
  "intake.event.clarificationResolvedByOpenedDeclined": "Clarification resolved — exchange declined, no refund",
  "intake.event.clarificationResolvedByOpenedKept": "Clarification resolved — exchange kept despite opening",
  "intake.event.clarificationResolvedByHygieneDeduct": "Clarification resolved — minus the opened pairs or pieces",
  "intake.event.clarificationResolvedByHygieneNone": "Clarification resolved — no refund, no store credit",
  "intake.event.clarificationResolvedByHygieneFull": "Clarification resolved — no deduction for opening",
  "intake.event.clarificationResolvedByApproval": "Clarification resolved — with the release",
  "intake.event.clarificationResolvedByRejection": "Clarification resolved — refund rejected",
  "intake.event.clarificationResolvedByClosedWithoutRefund": "Clarification resolved — refunded in Shopify",
  "intake.event.clarificationResolvedByHygieneGoodwill": "Clarification resolved — goodwill store credit",
  "intake.event.clarificationResolvedByGoodwillExchange": "Clarification resolved — goodwill exchange (replacement order)",
  "intake.event.inspected": "Inspection finished",
  "intake.event.stored": "Put away",
  "intake.event.storedClosedZero": "Put away and closed without a refund — there is nothing to refund (0.00)",
  "intake.event.storedClosedZeroAsPaidCredit": "Put away and closed without a store credit — there is nothing to credit (0.00)",
  "intake.event.notStored": "Not put away",
  "intake.event.storedSome": "{stocked} of {total} put away",
  "intake.event.notStoredClosedZero": "Not put away and closed without a refund — there is nothing to refund (0.00)",
  "intake.event.notStoredClosedZeroAsPaidCredit": "Not put away and closed without a store credit — there is nothing to credit (0.00)",
  "intake.event.storedSomeClosedZero": "{stocked} of {total} put away and closed without a refund — there is nothing to refund (0.00)",
  "intake.event.storedSomeClosedZeroAsPaidCredit": "{stocked} of {total} put away and closed without a store credit — there is nothing to credit (0.00)",
  "intake.event.storedErpReference": "Inventory system: accepted, reference {reference}",
  "intake.event.manuallyCreated": "Captured by hand at the goods-in desk",
  "intake.event.bonusConfirmed": "Bonus credit confirmed as booked",
  "intake.event.bonusReopened": "Bonus credit released for another attempt",
  "intake.event.instantLabelWithheld": "No instant label — return reason needs a review",
  "chronicle.origin.intake": "Warehouse",
  "chronicle.origin.desk": "Desk",
  "chronicle.origin.shopify": "Shopify",
  "chronicle.origin.mail": "Email",
  "chronicle.origin.portal": "Portal",
  "chronicle.empty": "Nothing has happened on this return yet.",
  "chronicle.mail.returnRequested": "Return confirmation sent",
  "chronicle.mail.returnWithdrawn": "Email sent for the customer's cancellation",
  "chronicle.mail.returnCanceled": "Cancellation email sent",
  "chronicle.mail.refundRejected": "Refund-declined email sent",
  "chronicle.mail.returnArrived": "“Parcel arrived” email sent to the customer",
  "chronicle.mail.returnClosed": "“Return completed” email sent to the customer",
  "chronicle.mail.generic": "Email sent to the customer",
  "page.returnDetail.intake.clarifyOpen": "Needs clarification",
  "page.returnDetail.clarifyBox.unitsMissing": "{lines} missing",
  "page.returnDetail.clarifyBox.line.bundle": "{article} · {opened} of {pairs} pairs opened",
  "page.returnDetail.clarifyBox.line.units.one": "{article} · {opened} of {count} piece opened",
  "page.returnDetail.clarifyBox.line.units.other": "{article} · {opened} of {count} pieces opened",
  "page.returnDetail.clarifyBox.line.opened": "{article} · opened",
  "page.returnDetail.clarifyBox.line.damaged": "{article} · damaged",
  "page.returnDetail.chronicle.heading": "History",
  "page.returnDetail.intake.noteHeading": "Add a note or photo",
  "page.returnDetail.deskNote.heading": "Note from the warehouse",
  "page.returnDetail.intake.noteDone": "Note saved. It is now in the chronicle.",
  "page.returnDetail.intake.clarifyResolvedDone": "Clarification resolved. The return continues.",
  "page.returnDetail.intake.clarifyAlreadyOpen": "A clarification is already open on this return — it was not opened a second time.",
  "page.returnDetail.intake.noteLabel": "Note",
  "page.returnDetail.intake.noteHint": "Notes stay on the return and cannot be edited later. Everyone on the team can read them.",
  "page.returnDetail.intake.noteSubmit": "Save note",
  "page.returnDetail.intake.clarifyOpenAction": "Flag as a clarification",
  "page.returnDetail.intake.clarifyResolveSubmit": "Resolve clarification",
  "page.returnDetail.intake.error.emptyNote": "A note without text says nothing. Write a sentence.",
  "nav.intake": "Returns desk",
  "nav.defects": "Defects",
  "page.intake.title": "Returns desk",
  "page.intake.stockOpen.heading": "Not yet in stock",
  "page.intake.stockOpen.count.one": "{count} return",
  "page.intake.stockOpen.count.other": "{count} returns",
  "page.intake.stockOpen.lead": "These returns are completed, but counted items are not in stock yet. Open the return and choose “Stock items”.",
  "page.intake.stockOpen.more.one": "… and {count} more",
  "page.intake.stockOpen.more.other": "… and {count} more",
  "page.intake.fieldLabel": "Number on the parcel",
  "page.intake.fieldHint": "Tracking number or order number — or the customer's name, e-mail or delivery address (street, postcode or town, 3 characters or more).",
  "page.intake.submit": "Open",
  "page.intake.unknown.heading": "Return without a registration",
  "page.intake.unknown.body": "Nothing found for “{query}”. That happens: the customer sent the parcel back without registering it. Capture it here.",
  "page.intake.unknown.action": "Capture by hand",
  "page.intake.closedOnly.heading": "closed · no further return registered",
  "page.intake.closedOnly.body": "No open return is registered for order {order}. If a parcel is here anyway, register it by hand.",
  "page.intake.closedOnly.action": "Register by hand",
  "page.intake.closedOnly.open": "Open {rma}",
  "page.intake.many.heading": "Several returns on this order",
  "page.intake.many.body": "Pick the one that is on your table.",
  "page.intake.many.capped": "More than {limit} matches — only the {limit} most recent are listed. Narrow it down: last name and town, the e-mail address, or street and house number.",
  "page.intake.many.customerHeading": "Several returns match this search",
  "page.intake.many.trackingHeading": "Several returns for this tracking number",
  "page.intake.tooShort": "Searching by name, e-mail or address needs at least {min} characters — no number matched.",
  "page.intakeDesk.title": "Goods in",
  "page.intakeDesk.toReturn": "Open the full return",
  "page.intakeDesk.orderInShopify": "Open the order in Shopify",
  "page.intakeDesk.window.within": "Return window met: registered on {registered}, the window ran until {date}.",
  "page.intakeDesk.window.expired": "Return window exceeded: registered on {registered}, the window ended on {date}.",
  "page.intakeDesk.window.allowedAfterExpiry": "Return window exceeded: registered on {registered}, the window ended on {date}. Your settings refund anyway.",
  "page.intakeDesk.window.waived": "Return window met: registered on {registered}. The window ended on {date}, but this order is on the allow list — no window applies to it.",
  "page.intakeDesk.window.extended": "Return window met: registered on {registered}. The window ended on {date}, but the allow list extends it for this order until {extendedTo}.",
  "page.intakeDesk.window.extensionPassed": "Return window exceeded: registered on {registered}. The window ended on {date}, and the extension from the allow list ended on {extendedTo} too.",
  "page.intakeDesk.window.loyaltyWaived": "Return window met: registered on {registered}. The window ended on {date}, but no window applies to loyal customers (spend from {threshold}).",
  "page.intakeDesk.window.loyaltyExtended": "Return window met: registered on {registered}. The window ended on {date}, but for loyal customers (spend from {threshold}) it is extended until {extendedTo}.",
  "page.intakeDesk.window.loyaltyExtensionPassed": "Return window exceeded: registered on {registered}. The window ended on {date}, and the extension for loyal customers (spend from {threshold}) ended on {extendedTo} too.",
  "page.intakeDesk.exchangeWindow.within": "Exchange right met: registered on {registered}, the right ran until {date}.",
  "page.intakeDesk.exchangeWindow.expired": "Exchange right exceeded: registered on {registered}, the right ended on {date}.",
  "page.intakeDesk.exchangeWindow.allowedAfterExpiry": "Exchange right exceeded: registered on {registered}, the right ended on {date}. Your settings exchange anyway.",
  "page.intakeDesk.exchangeWindow.waived": "Exchange right met: registered on {registered}. The right ended on {date}, but this order is on the allow list — no window applies to it.",
  "page.intakeDesk.exchangeWindow.extended": "Exchange right met: registered on {registered}. The right ended on {date}, but the allow list extends it for this order until {extendedTo}.",
  "page.intakeDesk.exchangeWindow.extensionPassed": "Exchange right exceeded: registered on {registered}. The right ended on {date}, and the extension from the allow list ended on {extendedTo} too.",
  "page.intakeDesk.exchangeWindow.loyaltyWaived": "Exchange right met: registered on {registered}. The right ended on {date}, but no window applies to loyal customers (spend from {threshold}).",
  "page.intakeDesk.exchangeWindow.loyaltyExtended": "Exchange right met: registered on {registered}. The right ended on {date}, but for loyal customers (spend from {threshold}) it is extended until {extendedTo}.",
  "page.intakeDesk.exchangeWindow.loyaltyExtensionPassed": "Exchange right exceeded: registered on {registered}. The right ended on {date}, and the extension for loyal customers (spend from {threshold}) ended on {extendedTo} too.",
  "page.intakeDesk.registered.heading": "Announced items",
  "page.intakeDesk.registered.orderLink": "To the order",
  "page.intakeDesk.notesForDesk.important": "Important: {note}",
  "page.intakeDesk.head.clarify": "Clarification",
  "page.intakeDesk.head.cancel": "Cancel return",
  "page.intakeDesk.closedNotice": "This return is {status}. Shopify has closed it — nothing booked here goes back to it. Check that the parcel really belongs here before you record anything.",
  "page.intakeDesk.clarifyResolveSubmit": "Resolve the clarification",
  "page.intakeDesk.complete.submit": "Complete",
  "page.intakeDesk.complete.doneNext": "Done. You can move on to the next return.",
  "page.intakeDesk.complete.confirm.title": "Really complete? The items are booked into stock and the refund is released.",
  "page.intakeDesk.complete.confirm.titleHook": "Really complete? This reports the quantities to your warehouse system and the money goes out.",
  "page.intakeDesk.complete.confirm.titleFwgone": "Really complete? This books the quantities in FWG.ONE and the money goes out.",
  "page.intakeDesk.complete.confirm.titleTemplate": "Really complete? This reports the quantities to your warehouse system via your HTTP call and the money goes out.",
  "page.intakeDesk.complete.confirm.titleStoreCredit": "Really complete? The items are booked into stock and the store credit is issued.",
  "page.intakeDesk.complete.confirm.titleMixed": "Really complete? The items are booked into stock, the refund is released and the store credit is issued.",
  "page.intakeDesk.complete.confirm.titleMixedAsPaidCredit": "Really complete? The items are booked into stock and the store credit is issued.",
  "page.intakeDesk.complete.confirm.titleExchange": "Really complete? The items are booked into stock and the exchange is released.",
  "page.intakeDesk.complete.confirm.titleExchangeHook": "Really complete? This reports the quantities to your warehouse system and the exchange is released.",
  "page.intakeDesk.complete.confirm.titleExchangeFwgone": "Really complete? This books the quantities in FWG.ONE and the exchange is released.",
  "page.intakeDesk.complete.confirm.titleExchangeTemplate": "Really complete? This reports the quantities to your warehouse system via your HTTP call and the exchange is released.",
  "page.intakeDesk.complete.confirm.titleStoreOnly": "Really complete? The items are booked into stock.",
  "page.intakeDesk.complete.confirm.titleStoreOnlyHook": "Really complete? This reports the quantities to your warehouse system.",
  "page.intakeDesk.complete.confirm.titleStoreOnlyFwgone": "Really complete? This books the quantities in FWG.ONE.",
  "page.intakeDesk.complete.confirm.titleStoreOnlyTemplate": "Really complete? This reports the quantities to your warehouse system via your HTTP call.",
  "page.intakeDesk.complete.confirm.submit": "Yes, complete",
  "page.intakeDesk.complete.confirm.pending": "Completing …",
  "page.intakeDesk.complete.confirm.back": "Back",
  "page.intakeDesk.complete.confirm.backToIntake": "Back to the entry form",
  "page.intakeDesk.complete.confirm.backToIntakeHint": "Correct your entries",
  "page.intakeDesk.complete.confirm.backToIntakePending": "Going back …",
  "page.intakeDesk.complete.permission": "Whoever completes puts the goods away and releases the money — recorded under your name.",
  "page.intakeDesk.complete.permissionExchange": "Whoever completes puts the goods away and releases the exchange — recorded under your name.",
  "page.intakeDesk.complete.permissionStoreOnly": "Whoever completes puts the goods away — recorded under your name.",
  "page.intakeDesk.complete.deskDecided": "An item that a product tag (such as “no-refund”) excludes from refunds is refunded — decided at the desk.",
  "page.intakeDesk.complete.deskDecidedAsCredit": "An item that a product tag (such as “no-refund”) excludes is credited as store credit — decided at the desk.",
  "page.intakeDesk.complete.blocked.notDecided": "Not all items processed yet. Please record arrival and condition for every item.",
  "page.intakeDesk.complete.blocked.onSiteCheck": "A position is set to “Check on site”: choose “Defect” or “Fine” first, then complete.",
  "page.intakeDesk.complete.blocked.customerDefect": "The customer reported a defect on one item: choose “Defective” or “No defect” first, then complete.",
  "page.intakeDesk.complete.blocked.nothingArrivedAwaited": "Nothing to complete yet: none of the registered items has arrived, and the missing one is still expected. If it arrives: reset the item, count it as “OK”, complete. If it does not: “Item not coming – remove from return”.",
  "page.intakeDesk.complete.blocked.clarification": "This return is flagged for clarification. Resolve the clarification first, then complete.",
  "page.intakeDesk.complete.blocked.notConfigured": "Putting away is not set up yet: pick a location in the settings or connect your inventory system.",
  "page.intakeDesk.complete.will.stocked.one": "Complete the return: {count} item will be put away.",
  "page.intakeDesk.complete.will.stocked.other": "Complete the return: {count} items will be put away.",
  "page.intakeDesk.complete.will.stockedNone": "Complete the return: no item will be put away.",
  "page.intakeDesk.complete.will.alreadyStocked": "Complete the return: the items that arrived are already in stock.",
  "page.intakeDesk.complete.will.refund": "{amount} will be refunded.",
  "page.intakeDesk.complete.will.request.stock": "Request still open: completing puts items away.",
  "page.intakeDesk.complete.will.request.stockOpen": "Request still open: completing puts items away, the case stays open.",
  "page.intakeDesk.complete.will.request.stockRefund": "Request still open: completing puts items away and refunds {amount}.",
  "page.intakeDesk.complete.will.request.refund": "Request still open: completing refunds {amount}.",
  "page.intakeDesk.complete.will.request.accept": "Request still open: completing accepts it.",
  "page.intakeDesk.complete.will.request.stockUnopened": "Request still open: completing puts unopened items away.",
  "page.intakeDesk.complete.will.request.stockOpenUnopened": "Request still open: completing puts unopened items away, the case stays open.",
  "page.intakeDesk.complete.will.request.stockRefundUnopened": "Request still open: completing puts unopened items away and refunds {amount}.",
  "page.intakeDesk.complete.will.request.stockCredit": "Request still open: completing puts items away and credits {amount} as store credit.",
  "page.intakeDesk.complete.will.request.stockCreditUnopened": "Request still open: completing puts unopened items away and credits {amount} as store credit.",
  "page.intakeDesk.complete.will.request.credit": "Request still open: completing credits {amount} as store credit.",
  "page.intakeDesk.complete.will.request.stockMixed": "Request still open: completing puts items away, refunds {payment} to the payment method and credits {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.request.stockMixedAsPaidCredit": "Request still open: completing puts items away and credits {payment} and {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.request.stockMixedUnopened": "Request still open: completing puts unopened items away, refunds {payment} to the payment method and credits {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.request.stockMixedUnopenedAsPaidCredit": "Request still open: completing puts unopened items away and credits {payment} and {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.request.refundMixed": "Request still open: completing refunds {payment} to the payment method and credits {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.request.refundMixedAsPaidCredit": "Request still open: completing credits {payment} and {storeCredit} as store credit.",
  "page.intakeDesk.complete.will.refundStoreCredit": "{amount} will be credited as store credit.",
  "page.intakeDesk.complete.will.refundStoreCreditBonus": "{amount} will be credited as store credit (+{percent}%).",
  "page.intakeDesk.complete.will.refundLater": "The refund amount will be calculated afterwards.",
  "page.intakeDesk.complete.will.refundLaterAsCredit": "The store credit amount will be calculated afterwards.",
  "page.intakeDesk.complete.will.refundAwaitsApproval": "The refund of {amount} will then wait for your approval.",
  "page.intakeDesk.complete.will.refundAwaitsApprovalAsCredit": "The store credit of {amount} will then wait for your approval.",
  "page.intakeDesk.complete.will.noRefund": "No money will be refunded.",
  "page.intakeDesk.complete.will.noRefundAsCredit": "Nothing will be credited.",
  "page.intakeDesk.complete.will.damagedRefunded.one": "{count} damaged item will be refunded but does not go back into stock.",
  "page.intakeDesk.complete.will.damagedRefundedAsCredit.one": "{count} damaged item will be credited but does not go back into stock.",
  "page.intakeDesk.complete.will.damagedRefunded.other": "{count} damaged items will be refunded but do not go back into stock.",
  "page.intakeDesk.complete.will.damagedRefundedAsCredit.other": "{count} damaged items will be credited but do not go back into stock.",
  "page.intakeDesk.complete.will.defectiveNotStocked.one": "{count} defective item will not be put away!",
  "page.intakeDesk.complete.will.defectiveNotStocked.other": "{count} defective items will not be put away!",
  "page.intakeDesk.complete.will.openedRefunded.one": "{count} opened item will be refunded but does not go back into stock.",
  "page.intakeDesk.complete.will.openedRefundedAsCredit.one": "{count} opened item will be credited but does not go back into stock.",
  "page.intakeDesk.complete.will.openedRefunded.other": "{count} opened items will be refunded but do not go back into stock.",
  "page.intakeDesk.complete.will.openedRefundedAsCredit.other": "{count} opened items will be credited but do not go back into stock.",
  "page.intakeDesk.complete.will.damagedExchange.one": "{count} damaged item will not be exchanged for now and does not go back into stock. The return then becomes a clarification case.",
  "page.intakeDesk.complete.will.damagedExchange.other": "{count} damaged items will not be exchanged for now and do not go back into stock. The return then becomes a clarification case.",
  "page.intakeDesk.complete.will.missing.one": "{count} registered item is still missing — the return waits for it.",
  "page.intakeDesk.complete.will.missing.other": "{count} registered items are still missing — the return waits for them.",
  "page.intakeDesk.complete.will.missingAwaitedMoney.one": "Refund and exchange follow only once it is counted or removed from the return.",
  "page.intakeDesk.complete.will.missingAwaitedMoneyAsCredit.one": "Store credit and exchange follow only once it is counted or removed from the return.",
  "page.intakeDesk.complete.will.missingAwaitedMoney.other": "Refund and exchange follow only once they are counted or removed from the return.",
  "page.intakeDesk.complete.will.missingAwaitedMoneyAsCredit.other": "Store credit and exchange follow only once they are counted or removed from the return.",
  "page.intakeDesk.complete.will.missingNotArrived.one": "{count} announced item has not arrived and will not be refunded.",
  "page.intakeDesk.complete.will.missingNotArrivedAsCredit.one": "{count} announced item has not arrived and will not be credited.",
  "page.intakeDesk.complete.will.missingNotArrived.other": "{count} announced items have not arrived and will not be refunded.",
  "page.intakeDesk.complete.will.missingNotArrivedAsCredit.other": "{count} announced items have not arrived and will not be credited.",
  "page.intakeDesk.complete.will.pairsMissing.one": "{count} pair has not been returned and will not be refunded.",
  "page.intakeDesk.complete.will.pairsMissingAsCredit.one": "{count} pair has not been returned and will not be credited.",
  "page.intakeDesk.complete.will.pairsMissing.other": "{count} pairs have not been returned and will not be refunded.",
  "page.intakeDesk.complete.will.pairsMissingAsCredit.other": "{count} pairs have not been returned and will not be credited.",
  "page.intakeDesk.complete.will.rejected.one": "{count} item is not accepted. It will be neither refunded nor exchanged.",
  "page.intakeDesk.complete.will.rejectedAsCredit.one": "{count} item is not accepted. It will be neither credited nor exchanged.",
  "page.intakeDesk.complete.will.rejected.other": "{count} items are not accepted. They will be neither refunded nor exchanged.",
  "page.intakeDesk.complete.will.rejectedAsCredit.other": "{count} items are not accepted. They will be neither credited nor exchanged.",
  "page.intakeDesk.complete.will.sentBack.one": "{count} item goes back to the customer — no refund, store credit or exchange.",
  "page.intakeDesk.complete.will.sentBack.other": "{count} items go back to the customer — no refund, store credit or exchange.",
  "page.intakeDesk.complete.will.missingStillComing.one": "Still coming? Then “Still coming — clarification”: the items that arrived are put away; refund and exchange wait for it.",
  "page.intakeDesk.complete.will.missingStillComingAsCredit.one": "Still coming? Then “Still coming — clarification”: the items that arrived are put away; store credit and exchange wait for it.",
  "page.intakeDesk.complete.will.missingStillComing.other": "Still coming? Then “Still coming — clarification”: the items that arrived are put away; refund and exchange wait for them.",
  "page.intakeDesk.complete.will.missingStillComingAsCredit.other": "Still coming? Then “Still coming — clarification”: the items that arrived are put away; store credit and exchange wait for them.",
  "page.intakeDesk.complete.will.strayClarification": "The return becomes a clarification case.",
  "page.intakeDesk.complete.will.exchangeReleased.one": "The exchange for {count} item will be triggered.",
  "page.intakeDesk.complete.will.exchangeReleased.other": "The exchange for {count} items will be triggered.",
  "page.intakeDesk.complete.will.exchangeAfterPayment": "The exchange will be triggered once the customer has paid {amount} extra.",
  "page.intakeDesk.complete.will.lead": "Complete the return:",
  "page.intakeDesk.complete.deskStockedWaiting": "The opened or damaged items and the money are decided on the return page.",
  "page.intakeDesk.complete.will.body.stocked.one": "{count} item will be put away.",
  "page.intakeDesk.complete.will.body.stocked.other": "{count} items will be put away.",
  "page.intakeDesk.complete.will.body.stockedNone": "No item will be put away.",
  "page.intakeDesk.complete.will.body.alreadyStocked": "The items that arrived are already in stock.",
  "page.intakeDesk.complete.will.body.stockedAndExchange.one": "{count} item will be put away and the exchange for {exchange} will be triggered.",
  "page.intakeDesk.complete.will.body.stockedAndExchange.other": "{count} items will be put away and the exchange for {exchange} will be triggered.",
  "page.intakeDesk.complete.will.body.exchangeItems.one": "{count} item",
  "page.intakeDesk.complete.will.body.exchangeItems.other": "{count} items",
  "page.intakeDesk.complete.will.body.stockedAndExchangeAfterPayment.one": "{count} item will be put away and the exchange will be triggered once the customer has paid {amount} extra.",
  "page.intakeDesk.complete.will.body.stockedAndExchangeAfterPayment.other": "{count} items will be put away and the exchange will be triggered once the customer has paid {amount} extra.",
  "page.intakeDesk.clarifyOpen": "Needs clarification",
  "page.intakeDesk.allPresent": "Everything OK",
  "page.intakeDesk.order.heading": "Did any other items from this order arrive?",
  "page.intakeDesk.order.noSiblings": "There is no other return for this order.",
  "page.intakeDesk.order.siblingOpen": "not put away yet",
  "page.intakeDesk.order.addMore": "Register more items from this order",
  "page.intakeDesk.order.addMoreNothing": "There is no other item from this order to register: every item is already in this or another return, or it was never shipped.",
  "page.intakeDesk.order.addMoreOnlyOne": "This order contains only this one item. Other items belong to a different order.",
  "page.intakeDesk.order.addMoreFailed": "Shopify did not respond just now. Please click “{button}” again in a moment.",
  "page.intakeManual.sibling.intro": "Second return for the order of {rma}: Shopify does not allow extending a return, so this creates a NEW return with its own number. Only the items not yet registered are listed below.",
  "page.intakeManual.sibling.unknown": "The return this order should come from is unknown — please enter the order number.",
  "page.intakeDesk.wish": "Customer’s request",
  "page.intakeDesk.wish.unassigned": "from the registration, with no reliable match to the positions:",
  "page.intakeDesk.targetChange.ask": "Customer wants a different item than the one registered?",
  "page.intakeDesk.targetChange.askAll": "Customer wants a different item than the one registered, store credit or a refund?",
  "page.intakeDesk.targetChange.askCreditOrRefund": "Customer wants store credit or a refund?",
  "page.intakeDesk.targetChange.unavailable.soldOut": "{title} — not available",
  "page.intakeDesk.targetChange.unavailable.packSize": "{title} — different pack size",
  "page.intakeDesk.targetChange.unavailable.priceDiffers": "{title} — different price",
  "page.intakeDesk.targetChange.unavailable.priceDiffersBy": "{title} — different price: {difference}",
  "page.intakeDesk.targetChange.unavailable.notAllowed": "{title} — not allowed by the exchange settings",
  "page.intakeDesk.targetChange.save": "Save",
  "page.intakeDesk.targetChange.clear": "Withdraw",
  "page.intakeDesk.targetChange.pending": "Recorded in retuno: {current}. Shopify still shows the registered item ({registered}).",
  "page.intakeDesk.targetChange.switched": "Switched in Shopify on {date}: {title}.",
  "page.intakeDesk.targetChange.unconfirmed": "Switch in Shopify not confirmed — check in Shopify",
  "page.intakeDesk.targetChange.none": "There is no other item at the same price.",
  "page.intakeDesk.targetChange.severalUnitsShared": "This exchange wish covers several items, for example because two positions ask for the same item in exchange. Changing it here only works for a single item. Please open a clarification.",
  "page.intakeDesk.targetChange.cleared": "Withdrawn. The registered item applies again.",
  "page.intakeDesk.targetChange.error.registeredUnknown": "The registered item no longer exists in Shopify. Nothing can be changed here.",
  "page.intakeDesk.targetChange.error.notOffered": "This item does not belong to this product.",
  "page.intakeDesk.targetChange.error.sameAsRegistered": "This is already the registered item.",
  "page.intakeDesk.targetChange.error.sameAsReturned": "This is the returned item. The same variant again only works through a new registration in retuno.",
  "page.intakeDesk.targetChange.error.blocked": "This item cannot be chosen right now.",
  "page.intakeDesk.targetChange.error.priceDiffers": "This only works at the same price as the registered item. For a different price: cancel in retuno and register again.",
  "page.intakeDesk.targetChange.error.severalUnitsChange": "Changing only works for a single item. This exchange wish covers several items — please open a clarification.",
  "page.intakeDesk.targetChange.error.alreadyStored": "This return is already put away. The exchange wish can no longer be changed.",
  "page.intakeDesk.targetChange.error.notChangeable": "The exchange wish cannot be changed on this return.",
  "page.intakeDesk.targetChange.refund": "Customer wants a refund",
  "page.intakeDesk.targetChange.refundPending": "Saved in retuno: refund instead of exchange. On completion, retuno removes the exchange item ({registered}) from the return and refunds to the original payment method.",
  "page.intakeDesk.targetChange.storeCredit": "Customer wants store credit",
  "page.intakeDesk.targetChange.storeCreditPending": "Saved in retuno: store credit instead of exchange. On completion, retuno removes the exchange item ({registered}) from the return and credits the value as store credit.",
  "page.intakeDesk.settlementChange.askStoreCredit": "Customer wants an exchange or store credit after all?",
  "page.intakeDesk.settlementChange.askRefund": "Customer wants an exchange or a refund after all?",
  "page.intakeDesk.settlementChange.askOnlyStoreCredit": "Customer wants store credit after all?",
  "page.intakeDesk.settlementChange.askOnlyRefund": "Customer wants a refund after all?",
  "page.intakeDesk.settlementChange.storeCreditPending": "Saved in retuno: store credit instead of a refund.",
  "page.intakeDesk.settlementChange.refundPending": "Saved in retuno: refund instead of store credit.",
  "page.intakeDesk.targetChange.proofMissing": "The exchange request must always be documented with a photo, e.g. of the return slip. Without photo proof, the return cannot be completed.",
  "page.intakeDesk.settlementChange.proofMissing": "The changed customer request must always be documented with a photo, e.g. of the return slip. Without photo proof, the return cannot be completed.",
  "page.intakeDesk.renewal.confirm": "The return will be canceled and immediately re-created with the exchange. It gets a new number. The customer is not notified.",
  "page.intakeDesk.renewal.confirmSubmit": "Yes, re-create as exchange",
  "page.intakeDesk.renewal.renewedFrom": "Re-created as {rma}. The old return {old} is canceled; the customer is not notified.",
  "page.intakeDesk.targetChange.error.countedFirst": "Reset first: items on this return have already been counted. Then the exchange works.",
  "page.intakeDesk.targetChange.error.clarificationFirst": "Resolve the open case first. Then the exchange works.",
  "page.intakeDesk.targetChange.error.exchangeNotAllowed": "An exchange is not possible for this item.",
  "page.intakeDesk.targetChange.error.alreadyRenewed": "This return has already been re-created as {rma}.",
  "page.intakeDesk.targetChange.error.decidedOnReturnPage": "This item has already been decided on the return page. An exchange is no longer possible here — please open a clarification.",
  "page.intakeDesk.targetChange.error.renewalCreateFailed": "The return is canceled, but Shopify did not create the new one. Create it via “File a new return from this one”.",
  "page.intakeDesk.targetChange.error.renewalCarryOverFailed": "The new return was created in Shopify, but retuno did not carry over the label, photos and link. Please do not close it yet and contact support.",
  "page.intakeDesk.targetChange.error.cancelRefused": "Shopify refused to cancel this return. Nothing was changed: the return keeps the customer's current wish, and no new one was created.",
  "page.intakeDesk.targetChange.error.approveRefused": "Shopify refused to approve the request. Nothing was changed: the return stays a request with the customer's current wish.",
  "page.intakeDesk.targetChange.error.approvedNotRenewed": "The return is now approved, but the exchange was not created: Shopify refused the cancellation. Try again with “{save}”.",
  "page.intakeDesk.targetChange.error.cancelRefusedReason": "Shopify says: {reason}",
  "page.intakeDesk.targetChange.error.noRefundTag": "This item is excluded from refunds in the shop. A refund is not possible here — please open a clarification.",
  "page.intakeDesk.targetChange.error.storeCreditNoCustomer": "This order was placed without a customer account. Store credit is not possible here.",
  "page.intakeDesk.targetChange.error.storeCreditUnavailable": "Shopify only offers store credit with the new customer accounts, and they are not switched on in your shop. Store credit is not possible here.",
  "page.intakeDesk.targetChange.error.severalUnits": "Changing to a refund only works for a single unit. For several units, please open a clarification.",
  "page.intakeDesk.targetChange.error.surcharge": "The customer pays extra for this exchange. A refund would have to account for that — please open a clarification.",
  "page.intakeDesk.targetChange.error.surchargeUnknown": "It is not known whether this exchange carries a surcharge. Please open a clarification instead of changing it here.",
  "page.intakeDesk.targetChange.error.settled": "Money has already moved or is on its way for this return. It can no longer be changed.",
  "page.intakeDesk.targetChange.error.orderUnreadable": "The order could not be read from Shopify just now. Nothing changed — please try again in a moment.",
  "page.intakeDesk.putAway.error.changePhotoMissing": "Not completed: the changed customer wish has no photo as proof yet. One photo covers all positions — photograph the return slip, or withdraw the change, or open a clarification.",
  "page.intakeDesk.putAway.error.packSplitExchange": "Not completed: Opened pairs are recorded on a bundle the customer wants to exchange. The exchange has to be decided on the return page first.",
  "page.intakeDesk.putAway.error.openedExchange": "Not completed: for an opened hygiene item the customer wants to exchange, exchange or refund is decided on the return page first.",
  "page.intakeDesk.putAway.error.hygieneRefund": "Not completed: for an opened hygiene item the customer wants refunded, the refund is decided on the return page first.",
  "page.intakeDesk.putAway.error.hygieneRefundAsCredit": "Not completed: for an opened hygiene item the customer wants to return, the store credit is decided on the return page first.",
  "page.intakeDesk.putAway.error.refundConversionMissing": "Not completed: a position is set to be refunded but counted as “Missing”. That would refund goods that are not here. Withdraw the refund or open a clarification.",
  "page.intakeDesk.putAway.error.exchangeRemovalRefused": "Not completed: Shopify did not remove the exchange item from the return. Without that it would ship despite the refund — so nothing was processed.",
  "page.intakeDesk.complete.blocked.changePhotoMissing": "The changed customer wish has no photo as proof yet. One photo covers all positions, for example of the return slip.",
  "page.intakeDesk.complete.blocked.packSplitExchange": "Opened pairs are recorded on a bundle the customer wants to exchange. The exchange has to be decided on the return page first.",
  "page.intakeDesk.complete.blocked.openedExchange": "For an opened hygiene item the customer wants to exchange, exchange or refund is decided on the return page first.",
  "page.intakeDesk.complete.blocked.hygieneRefund": "For an opened hygiene item the customer wants refunded, the refund is decided on the return page first.",
  "page.intakeDesk.complete.blocked.hygieneRefundAsCredit": "For an opened hygiene item the customer wants to return, the store credit is decided on the return page first.",
  "page.intakeDesk.complete.blocked.refundConversionMissing": "A position is set to be refunded but counted as “Missing”.",
  "page.intakeDesk.finish.convertedToRefund": "Exchange removed from the return, refunded instead of exchanged: {lines}.",
  "page.intakeDesk.finish.convertedToRefundAsPaidCredit": "Exchange removed from the return, credited as store credit instead of exchanged: {lines}.",
  "page.intakeDesk.unnamedLine": "Item without a name",
  "page.intakeDesk.expected": "{expected} announced",
  "page.intakeDesk.removedFromReturn": "removed from the return",
  "page.intakeDesk.releasedInAdvance": "{count} of them replaced in advance – not coming back",
  "page.intakeDesk.releasedInFull.badge": "Done – no action needed",
  "page.intakeDesk.barcode": "EAN",
  "page.intakeDesk.stillOpen": "{open} still to check",
  "intake.event.defectPhotoWaived": "Continued without a photo — with a reason",
  "intake.event.defectPhotoCustomerSufficient": "Defect closed — the customer's photo serves as evidence",
  "intake.event.wrongItemCustomerPhotoSufficient": "Wrong item confirmed – the photo the customer submitted is sufficient",
  "intake.event.defectNotDepictable": "Defect confirmed – defect cannot be shown in a photo",
  "intake.event.wrongItemCustomerPhotoWithdrawn": "Wrong item no longer confirmed – a photo is required at the intake desk again",
  "intake.event.labelFeeDecided": "Label fee decided at the desk",
  "intake.event.sendBackRequested": "Return shipment to the customer requested",
  "intake.event.sendBackCleared": "Return shipment to the customer withdrawn",
  "intake.event.sendBackSent": "Marked as sent back to the customer",
  "intake.fridayList.mail.subject.one": "Friday list {week}: {count} return shipment to customers",
  "intake.fridayList.mail.subject.other": "Friday list {week}: {count} return shipments to customers",
  "intake.fridayList.mail.intro.one": "This item goes back to the customer and is not yet marked as sent back:",
  "intake.fridayList.mail.intro.other": "These {count} items go back to the customer and are not yet marked as sent back:",
  "intake.fridayList.mail.item": "{order} · {title} · {quantity}× · {url}",
  "intake.fridayList.mail.itemWithSku": "{order} · {title} (SKU {sku}) · {quantity}× · {url}",
  "intake.fridayList.mail.unknown": "unknown",
  "intake.fridayList.mail.note": "Mark “Sent back” on the return page once the parcel has left. Until then the item appears on this list every week.",
  "intake.fridayList.mail.disposalHeading": "Can be disposed of — these items do not go back to the customer, and there is no label for them:",
  "intake.fridayList.mail.disposalItem": "Can be disposed of: {order} · {title} · {quantity}× · {url}",
  "intake.fridayList.mail.disposalItemWithSku": "Can be disposed of: {order} · {title} (SKU {sku}) · {quantity}× · {url}",
  "intake.fridayList.mail.subjectDisposal.one": "Friday list {week}: {count} item can be disposed of",
  "intake.fridayList.mail.subjectDisposal.other": "Friday list {week}: {count} items can be disposed of",
  "intake.event.sendBackLabelCreated": "DHL label for the return shipment bought",
  "intake.event.sendBackLabelFailed": "No DHL label for the return shipment",
  "intake.sendBackLabels.sandbox": "Test labels from the DHL sandbox: do not use them for shipping.",
  "intake.sendBackLabels.attached.one": "Attached: one document with {count} DHL shipping label, one per return.",
  "intake.sendBackLabels.attached.other": "Attached: one document with {count} DHL shipping labels, one per return.",
  "intake.sendBackLabels.notMerged": "{name}: label {number} could not be added to the document. Please open it on the return.",
  "intake.sendBackLabels.earlier": "{name}: label already sent on {date} ({number}).",
  "intake.sendBackLabels.none": "{name}: no label. The return shows the reason (a DHL rejection can quote parts of the address, so it is not in this mail).",
  "intake.sendBackLabels.customsGaps": "{name}: label bought, but the customs declaration lacks the tariff number or country of origin for at least one item. The return shows which item.",
  "intake.sendBackLabels.customsNoTariff": "No tariff number (HS code) in the customs declaration: {items}. Add it to the variant in Shopify (customs information) and the next label will carry it.",
  "intake.sendBackLabels.customsNoOrigin": "No country of origin in the customs declaration: {items}. Add it to the variant in Shopify (customs information) and the next label will carry it.",
  "intake.sendBackLabels.customsDenied": "retuno is not yet allowed to read the tariff number and country of origin in Shopify — the customs declaration carries neither.",
  "intake.sendBackLabels.customsUnreadable": "The tariff number and country of origin could not be read from Shopify just now — the customs declaration carries neither.",
  "intake.strayList.mail.subject.one": "Stray items {week}: {count} send-back with customer label",
  "intake.strayList.mail.subject.other": "Stray items {week}: {count} send-backs with customer label",
  "intake.strayList.mail.intro.one": "This stray item goes back with the customer's label and is not yet marked as sent back:",
  "intake.strayList.mail.intro.other": "These {count} stray items go back with the customer's label and are not yet marked as sent back:",
  "intake.strayList.mail.item": "{name} · {url}",
  "intake.strayList.mail.note": "Mark “Sent back” on the return page once the parcel has left. Until then the stray item appears on this list every week.",
  "intake.strayList.attached.one": "Attached: one document with {count} customer label, one per return.",
  "intake.strayList.attached.other": "Attached: one document with {count} customer labels, one per return.",
  "intake.strayList.earlier": "{name}: label already sent with list {week}.",
  "intake.strayList.tooLarge": "{name}: label too large for this mail. Please download it on the return.",
  "intake.strayList.notMerged": "{name}: label could not be added to the document. Please download it on the return.",
  "intake.event.strayFeeNoted": "Storage fee noted",
  "intake.event.strayLabelAdded": "Customer label uploaded",
  "intake.event.straySendBackCleared": "Send-back with customer label cancelled",
  "intake.event.straySentBack": "Stray item sent back with customer label",
  "intake.event.closedNotReceived": "Ended – item not received",
  "intake.event.approvalRevoked": "Approval withdrawn — not booked",
  "intake.event.closedWithoutRefund": "Closed without refund — refunded in Shopify",
  "intake.event.packSplitRecorded": "Opened pairs recorded",
  "intake.event.packSplitCorrected": "Opened pairs corrected",
  "intake.event.packSplitMissingRecorded": "Pairs not returned recorded",
  "intake.event.packSplitRestocked": "Sealed pairs put into stock (“1 pair”)",
  "intake.event.wrongItemRestocked": "Wrong item shipped from China: restocked instead of the ordered item",
  "intake.event.deskStocked.one": "Stocked: {count} item. The opened or damaged items and the money are decided on the return page.",
  "intake.event.deskStocked.other": "Stocked: {count} items. The opened or damaged items and the money are decided on the return page.",
  "intake.event.deskStockedLate.one": "Stocked: {count} item.",
  "intake.event.deskStockedLate.other": "Stocked: {count} items.",
  "intake.event.deskStockedCameBack.one": "Stocked: {count} item – returned for “Send the replacement in advance”; the replacement has already shipped.",
  "intake.event.deskStockedCameBack.other": "Stocked: {count} items – returned for “Send the replacement in advance”; the replacement has already shipped.",
  "intake.event.packSplitExchangeDecided": "Bundle on exchange: decided",
  "intake.event.packSplitExchangeRefund": "Bundle on exchange: converted to a refund – opened pairs deducted at the single price",
  "intake.event.packSplitExchangeStoreCredit": "Bundle on exchange: converted to store credit – opened pairs deducted at the single price",
  "intake.event.packSplitExchangeDeclined": "Bundle on exchange: exchange declined – no refund",
  "intake.event.packSplitExchangeKept": "Bundle on exchange: exchange kept despite opened pairs – no deduction",
  "intake.event.openedExchangeDecided": "Opened hygiene item on exchange: decided",
  "intake.event.reevaluated": "Evaluated again",
  "intake.event.photoRemoved": "Photo deleted",
  "intake.event.windowGoodwillAccepted": "Return accepted as a goodwill gesture – the withdrawal period had expired",
  "intake.event.damageDisposed": "Completed without action – can be disposed of",
  "intake.event.openedExchangeRefund": "Opened hygiene item on exchange: converted to a refund, without a deduction for opening",
  "intake.event.openedExchangeStoreCredit": "Opened hygiene item on exchange: converted to store credit, without a deduction for opening",
  "intake.event.openedExchangeDeclined": "Opened hygiene item on exchange: exchange declined – no refund",
  "intake.event.openedExchangeKept": "Opened hygiene item on exchange: exchange kept despite opening",
  "intake.event.hygieneRefundDecided": "Opened hygiene item, refund or store credit: decided",
  "intake.event.hygieneRefundDeduct": "Opened hygiene item: minus the opened pairs or pieces at the single price",
  "intake.event.hygieneRefundNone": "Opened hygiene item: no refund, no store credit",
  "intake.event.hygieneRefundFull": "Opened hygiene item: no deduction for opening",
  "intake.event.hygieneRefundGoodwill": "Opened hygiene item: goodwill store credit, no deduction for opening",
  "intake.event.closedDefectStoreCredit": "Closed without return shipment – defect confirmed, store credit booked",
  "intake.event.closedWrongItemStoreCredit": "Closed without return shipment – wrong item confirmed, store credit booked",
  "intake.event.closedDefectRefund": "Closed without return shipment – defect confirmed, refunded to the payment method",
  "intake.event.closedWrongItemRefund": "Closed without return shipment – wrong item confirmed, refunded to the payment method",
  "intake.event.portalExceptionUsed": "Registered with a one-day exception",
  "intake.event.portalExceptionUsedDetail": "Unlocked by {name}, valid until {until}",
  "intake.event.strayFeeNoted.detail.one": "{amount} (day {day}: {flat} flat fee plus {count} day × {daily})",
  "intake.event.strayFeeNoted.detail.other": "{amount} (day {day}: {flat} flat fee plus {count} days × {daily})",
  "intake.event.strayFeeNoted.detailFlat": "{amount} (day {day}: flat fee {flat})",
  "intake.event.labelFeeByRule": "Label fee: back to the rule",
  "intake.event.labelFeeCharged": "Label fee: charged (decided at the desk)",
  "intake.event.labelFeeWaived": "Label fee: waived (decided at the desk)",
  "intake.event.labelFeeChargedAgainstRule": "Label fee: charged — AGAINST the rule, which would have waived it (decided at the desk)",
  "intake.event.labelFeeWaivedAgainstRule": "Label fee: waived — against the rule, which would have charged it (decided at the desk)",
  "intake.event.labelFeeChargedAtReturns": "Label fee: charged (decided on the return page)",
  "intake.event.labelFeeWaivedAtReturns": "Label fee: waived (decided on the return page)",
  "intake.event.labelFeeChargedAgainstRuleAtReturns": "Label fee: charged — AGAINST the rule, which would have waived it (decided on the return page)",
  "intake.event.labelFeeWaivedAgainstRuleAtReturns": "Label fee: waived — against the rule, which would have charged it (decided on the return page)",
  "page.intakeDesk.defect": "Defective",
  "page.intakeDesk.defect.done": "Recorded as defective: it will not go back into stock. Please take a photo.",
  "page.intakeDesk.noDefect": "No defect",
  "page.intakeDesk.customerDefect.hint": "The customer reported a defect. Check the defect – signs of wear are allowed. “Defective” confirms it, “No defect” or “OK” rejects it; only then is “Damaged” available.",
  "page.intakeDesk.customerDefect.judgeFirst": "Judge the reported defect first: “Defective” or “No defect”. Nothing was counted.",
  "page.intakeDesk.customerDefect.confirmed": "The defect is confirmed – “Damaged” does not apply here. Nothing was counted.",
  "page.intakeDesk.defect.notDepictable.done": "Recorded as defective: it will not go back into stock. No photo needed – the defect cannot be shown in a photo.",
  "page.intakeDesk.defectFound.button": "Defect found — waive label fee",
  "page.intakeDesk.defectFound.done": "Defect recorded. The label fee is waived — the refund is calculated without it.",
  "page.intakeDesk.defectFound.doneAsCredit": "Defect recorded. The label fee is waived — the store credit is calculated without it.",
  "page.intakeDesk.defectFound.settled": "Already refunded: return a waived label fee by hand on the order in Shopify.",
  "page.intakeDesk.defectFound.settledAsCredit": "Already credited: return a waived label fee by hand on the order in Shopify.",
  "page.intakeDesk.defectFound.notStored": "Not put away yet: choose “Defect” at the position — that waives the label fee as well.",
  "page.intakeDesk.defectFound.damaged": "This item is counted as “Damaged” — a defect does not apply here. Nothing was changed.",
  "page.intakeDesk.defectFound.notCustomerDefect": "The customer did not report a defect here – a defect found at the desk does not waive the label fee. Nothing was changed.",
  "page.intakeDesk.wrongItem": "Wrong item shipped",
  "page.intakeDesk.wrongItem.hint": "We shipped the wrong item: the ordered item is still in the warehouse — it goes back into stock. The item that arrived is not booked. If the customer sent back a different item instead of the ordered one, this is not the right button — use “Stray item”.",
  "page.intakeDesk.wrongItem.hintChina": "This parcel was shipped from China: the ordered item was never in our stock and is not booked. The item that arrived is restocked — pick it from the catalogue under “Arrived instead”. If the customer sent back a different item instead of the ordered one, this is not the right button — use “Stray item”.",
  "page.intakeDesk.wrongItem.arrivedLabel": "Which item arrived? (SKU, EAN or name)",
  "page.intakeDesk.wrongItem.submit": "Record as wrong item shipped",
  "page.intakeDesk.wrongItem.done": "Recorded as wrong item shipped: the ordered item counts as received, the calculation is being redone. Please take a photo of the goods that arrived.",
  "page.intakeDesk.wrongItem.doneChina": "Recorded as wrong item shipped (from China): the item that arrived is restocked, the calculation is being redone. Please take a photo of the goods that arrived.",
  "page.intakeDesk.wrongItem.arrived": "Arrived",
  "page.intakeDesk.arrivedInstead": "Arrived instead",
  "page.intakeDesk.renewedInstead": "Exchanged instead for",
  "page.intakeDesk.manualWishNow": "Customer now wants",
  "page.intakeDesk.wrongItem.error.arrivedMissing": "Please enter which item arrived (500 characters at most). Nothing was saved.",
  "page.intakeDesk.stray": "Stray item",
  "page.intakeDesk.stray.hint": "Instead of the registered item, goods arrived that are not part of your range at all — for example because a return label was swapped. The registered item counts as “Missing” and is not put away. Completing opens a clarification, even if only the stray item arrived. The goods that arrived are not booked. If the registered item turns up after all, reset the position and assess it again.",
  "page.intakeDesk.stray.arrivedLabel": "What arrived instead? (description, brand or item number — please no names or addresses)",
  "page.intakeDesk.stray.submit": "Record as stray item",
  "page.intakeDesk.stray.done": "Recorded as stray item: the registered item counts as missing, the calculation is being redone. Please take a photo of the goods that arrived.",
  "page.intakeDesk.stray.photoHeading": "Photo of the goods that arrived",
  "page.intakeDesk.stray.error.arrivedMissing": "Please enter what arrived instead (500 characters at most). Nothing was saved.",
  "page.intakeDesk.stray.error.otherFinding": "This position already carries a defect or a wrong item shipped. Please reset the position and count it again. Nothing was saved.",
  "page.intakeDesk.wrongItem.showModel": "Show variants of this model",
  "page.intakeDesk.wrongItem.searchSubmit": "Search the catalogue",
  "page.intakeDesk.wrongItem.choose": "Which of these items arrived? Click to record it.",
  "page.intakeDesk.wrongItem.noHits": "No item found. Try another search — or record it below as “not found”.",
  "page.intakeDesk.wrongItem.capped": "There are more matches than shown here — please search more precisely.",
  "page.intakeDesk.wrongItem.tooShort": "Please enter at least {min} characters.",
  "page.intakeDesk.wrongItem.notFound": "Not found in the catalogue",
  "page.intakeDesk.wrongItem.notFoundHint": "Only if the item is neither among the variants nor in the search. The note is saved as “not recognised”.",
  "page.intakeDesk.wrongItem.notFoundLabel": "Which item arrived? (note)",
  "page.intakeDesk.wrongItem.recognized": "recognised",
  "page.intakeDesk.wrongItem.unrecognized": "not recognised",
  "page.intakeDesk.wrongItem.error.noModel": "retuno knows no Shopify model for this line — please search the catalogue.",
  "page.intakeDesk.wrongItem.error.searchFailed": "Shopify did not answer the request. Nothing was saved.",
  "page.intakeDesk.wrongItem.error.variantUnknown": "Shopify does not know this item (any more). Nothing was saved.",
  "page.intakeDesk.defect.photoMissing": "This defect still needs a photo.",
  "page.intakeDesk.photoDuty.missingDamaged": "The damaged item still needs a photo.",
  "page.intakeDesk.photoDuty.missingOpened": "The opened item still needs a photo.",
  "page.intakeDesk.photoDuty.missingWrongItem": "The wrong item still needs a photo.",
  "page.intakeDesk.photoDuty.missingStray": "The stray item still needs a photo.",
  "page.intakeDesk.photoReminder": "Don't forget the photo!",
  "page.intakeDesk.customerPhotos.heading": "Customer photo",
  "page.intakeDesk.customerComment": "Comment from the customer",
  "page.intakeDesk.customerPhotos.withheld": "Only members with access to returns can see the customer photo.",
  "page.intakeDesk.defect.preselected": "Review: defect confirmed — “Defect” is preselected.",
  "page.intakeDesk.defect.customerPhotoSufficient": "The returns desk confirms that the photos are sufficient and no new photo needs to be uploaded.",
  "page.intakeDesk.defect.notDepictableCheck": "Defect cannot be photographed. Lets water through, irritating seam.",
  "page.intakeDesk.defect.customerPhotoConfirm": "Confirm",
  "page.intakeDesk.defect.customerPhotoConfirmed": "Customer photo noted as sufficient — the sentence is in the history.",
  "page.intakeDesk.defect.error.customerPhotoMissing": "There is no customer photo on this item. Nothing was saved.",
  "page.intakeDesk.defect.error.customerPhotoUnconfirmed": "Please tick the box first. Nothing was saved.",
  "page.intakeDesk.defect.error.notDepictableNoDefect": "This box only applies to a position counted as “Defect”. Nothing was saved.",
  "page.intakeDesk.labelFee.title": "Label fee",
  "page.intakeDesk.labelFee.rule.charged": "Charged against the refund.",
  "page.intakeDesk.labelFee.rule.chargedAsCredit": "Charged against the store credit.",
  "page.intakeDesk.labelFee.rule.chargedPerLabel": "By rule: deducted from the refund {count} times — {count} return labels used; the fee applies per label.",
  "page.intakeDesk.labelFee.rule.chargedPerLabelAsCredit": "By rule: deducted from the store credit {count} times — {count} return labels used; the fee applies per label.",
  "page.intakeDesk.labelFee.rule.waivedReview": "By the rule: waived — defect confirmed.",
  "page.intakeDesk.labelFee.rule.waivedReason": "By the rule: waived — return reason “{reason}”.",
  "page.intakeDesk.labelFee.rule.waivedOnSite": "By rule: provisionally waived — “Check on site” (return reason “{reason}”). “Fine” at the position charges the fee.",
  "page.intakeDesk.labelFee.rule.waivedOnSiteExchange": "By rule: provisionally waived — “Check on site” (return reason “{reason}”). No money is paid back (exchange), so the label fee is not charged.",
  "page.intakeDesk.labelFee.noLabel": "There is no return label from retuno for this return — no label fee is charged.",
  "page.intakeDesk.labelFee.choice.rule": "Default",
  "page.intakeDesk.labelFee.choice.charge": "charged",
  "page.intakeDesk.labelFee.choice.waive": "free of charge",
  "page.intakeDesk.labelFee.explain.rule": "Label is charged as selected – if everything fits, leave it on Default.",
  "page.intakeDesk.labelFee.explain.charge": "No defect found – the label fee is deducted.",
  "page.intakeDesk.labelFee.explain.waive": "The label fee is waived – as a goodwill gesture only. A defect the customer did not report is not a reason for it.",
  "page.intakeDesk.labelFee.explainName.rule": "Default",
  "page.intakeDesk.labelFee.explainName.charge": "Charged",
  "page.intakeDesk.labelFee.explainName.waive": "Free of charge",
  "page.intakeDesk.labelFee.current": "Decided: {choice}.",
  "page.intakeDesk.labelFee.save": "Save",
  "page.intakeDesk.labelFee.done": "Label fee saved — the calculation is being redone.",
  "page.intakeDesk.labelFee.error.unknown": "This choice does not exist. Please reload the page.",
  "page.intakeDesk.labelFee.error.locked": "The label fee can no longer be changed — the return is stored or already refunded.",
  "page.intakeDesk.labelFee.error.lockedAsCredit": "The label fee can no longer be changed — the return is stored or already credited.",
  "page.intakeDesk.packSplit.heading": "Hygiene bundle · {pairs} pairs",
  "page.intakeDesk.packSplit.intro": "Opened hygiene items are not sent back to the customer.",
  "page.intakeDesk.packSplit.opened": "of those opened",
  "page.intakeDesk.packSplit.submit": "Record opened pairs",
  "page.intakeDesk.packSplit.recorded": "{opened} of {pairs} pairs opened — deducted: {deduction}.",
  "page.intakeDesk.packSplit.recordedPending": "{opened} of {pairs} pairs opened — the deduction is being calculated.",
  "page.intakeDesk.packSplit.recordedFailed": "{opened} of {pairs} pairs opened — the deduction could not be calculated: the single price can’t be read at Shopify right now. Press “Record opened pairs” again and retuno will recalculate.",
  "page.intakeDesk.packSplit.missing": "{missing} of {pairs} pairs not returned",
  "page.intakeDesk.packSplit.exchange": "Opened pairs can't be recorded here for an exchange: the exchange would go ahead as if nothing were opened. If a pair is opened, open a clarification case.",
  "page.intakeDesk.packSplit.exchangeRecorded": "Opened pairs are recorded at this exchange item, but the exchange doesn't see them. Reset the item or open a clarification case.",
  "page.intakeDesk.packSplit.noDamaged": "Hygiene bundles have “Opened” instead of “Damaged”. Choose “OK” and “Opened” and enter the number of pairs.",
  "page.intakeDesk.packSplit.allSealed": "All pairs sealed? Then enter them all under “OK” – the bundle is refunded like any item.",
  "page.intakeDesk.packSplit.allSealedAsCredit": "All pairs sealed? Then enter them all under “OK” – the bundle is credited like any item.",
  "page.intakeDesk.packSplit.exchangeIntro": "The customer wants to exchange this bundle. Record the condition of the item.",
  "page.intakeDesk.packSplit.exchangeAllSealed": "All pairs sealed? Then enter them all under “OK” – the exchange goes ahead as registered.",
  "page.intakeDesk.packSplit.exchangePending": "{opened} of {pairs} pairs opened – the exchange is decided on the return page.",
  "page.intakeDesk.packSplit.exchangeDeclined": "{opened} of {pairs} pairs opened. Decided on the return page: no exchange, no refund.",
  "page.intakeDesk.packSplit.exchangeKept": "{opened} of {pairs} pairs opened. Decided on the return page: the exchange stays, without deduction.",
  "page.intakeDesk.packSplit.error.decided": "The exchange of this bundle has already been decided on the return page. The opened pairs can no longer be changed. Nothing changed.",
  "page.intakeDesk.packSplit.error.range": "Please enter a number from 1 to {pairs}.",
  "page.intakeDesk.packSplit.error.notCounted": "Count the bundle as arrived first, then the opened pairs.",
  "page.intakeDesk.packSplit.error.unreadable": "Shopify can’t be read right now — the pairs are not recorded.",
  "page.intakeDesk.packSplit.error.exchange": "Not recorded: opened pairs can't be recorded for an exchange. If a pair is opened, open a clarification case.",
  "page.intakeDesk.packSplit.error.locked": "The opened pairs can no longer be changed — the return is stored or already refunded.",
  "page.intakeDesk.packSplit.error.lockedAsCredit": "The opened pairs can no longer be changed — the return is stored or already credited.",
  "page.intakeDesk.packSplit.error.notBundle": "This item is not a hygiene bundle.",
  "page.intakeDesk.packSplit.correct.label": "Correct number of opened pairs",
  "page.intakeDesk.packSplit.correct.hint": "Entered the wrong number? Choose the correct one and press the button below. This works as long as nothing about the money has been decided on the return page. If one more pair is sealed and the sealed pairs are already in stock, retuno puts it into stock right away.",
  "page.intakeDesk.packSplit.correct.submit": "Correct opened pairs",
  "page.intakeDesk.packSplit.correct.error.notSplit": "No opened pairs are recorded at this line. Nothing changed.",
  "page.intakeDesk.packSplit.correct.error.exchange": "For an exchange, the number of opened pairs can't be corrected here. Nothing changed.",
  "page.intakeDesk.packSplit.correct.error.decided": "This bundle has already been decided on the return page. The opened pairs can no longer be corrected. Nothing changed.",
  "page.intakeDesk.packSplit.correct.error.stockBooked": "Not corrected: the sealed pairs of this bundle are already in stock. More opened pairs would mean taking a pair back out of stock – that isn't possible here. Nothing changed.",
  "page.intakeDesk.packSplit.correct.error.evaluation": "Corrected. The additional sealed pair isn't in stock yet, though: the calculation couldn't be refreshed just now. Press the button again with the same number.",
  "page.intakeDesk.packSplit.error.resetStocked": "Not reset: the sealed pairs of this bundle are already in stock. If the number of opened pairs is wrong, correct it at this line. Nothing changed.",
  "page.intakeDesk.packSplit.noPackOption": "Hygiene item: the number of pairs can’t be read. In the settings under “Exchanges”, enter in the field “Option name in Shopify” what the option is called (e.g. “Quantity”).",
  "page.intakeDesk.packSplit.noSingleVariant": "No “1 pair” variant in the same colour and size — retuno can’t deduct opened pairs here.",
  "page.intakeDesk.hygiene.noDamaged": "Hygiene items have no “Damaged” and no “Not accepted”: count them as “OK” or “Opened”.",
  "page.intakeDesk.hygiene.error.notSingle": "This line is not a single hygiene item — there is no “Opened” here.",
  "page.intakeDesk.hygiene.error.unreadable": "Shopify can’t be read right now — “Opened” is not counted.",
  "page.intakeDesk.hygieneCount.quantity": "{reason} – quantity",
  "page.intakeDesk.hygieneCount.save": "Save",
  "page.intakeDesk.hygieneCount.error.sumPairs": "Not counted: “OK” and “Opened” must add up to {open} pairs – that many are still open at this position.",
  "page.intakeDesk.hygieneCount.error.sumItems": "Not counted: “OK” and “Opened” must add up to exactly what is still open at this position (still open: {open}).",
  "page.intakeDesk.hygieneCount.remaining.items.one": "Still {left} of {count} item to assign.",
  "page.intakeDesk.hygieneCount.remaining.items.other": "Still {left} of {count} items to assign.",
  "page.intakeDesk.hygieneCount.remaining.pairs": "Still {left} of {open} pairs to assign.",
  "page.intakeDesk.hygieneCount.notReturnedConfirm.one": "Yes, {left} pair was not returned – it is deducted at the single price.",
  "page.intakeDesk.hygieneCount.notReturnedConfirm.other": "Yes, {left} pairs were not returned – they are deducted at the single price.",
  "page.intakeDesk.hygieneCount.error.wholeBundleMissing": "Not counted: at least one whole bundle is missing – count it as “Missing” first.",
  "page.intakeDesk.hygieneCount.error.missingUnconfirmed": "Not counted: what is neither “OK” nor “Opened” (pairs: {missing}) only counts as missing with the “not returned” tick. Otherwise count it as “OK” or “Opened”.",
  "page.intakeDesk.bundlePairs.pair": "Pair {index}",
  "page.intakeDesk.bundlePairs.bundle": "Bundle {index}",
  "page.intakeDesk.bundlePairs.error.incomplete": "Not saved: choose a condition for every pair – “OK”, “Missing”, “Opened” or “Defective”. Nothing was changed.",
  "page.intakeDesk.bundlePairs.error.exchange": "Not saved: on an exchange you count the bundle with “OK” and “Opened”. Nothing was changed.",
  "page.intakeDesk.bundlePairs.error.stale": "Not saved: something has changed at this position in the meantime. Reload the page and choose again. Nothing was changed.",
  "page.intakeDesk.packSplit.defect": "Defective among them: {defect}.",
  "page.intakeDesk.labelFee.error.noLabel": "There is no return label from retuno for this return — there is no label fee to decide. Nothing was saved.",
  "page.intakeDesk.putAway.error.defectCountedReceived": "Not completed: one position is confirmed as defective and counted as “Fine”. A defect does not go back into stock. Undo that position and count it as “Defective” — or withdraw the review if it is not a defect after all.",
  "page.intakeDesk.putAway.error.defectPhotoMissing": "Not completed: a defect recorded at the desk has no photo. It cannot be completed without one — take a photo of that position.",
  "page.intakeDesk.putAway.error.photoMissing": "Not completed: a damaged or opened item, a wrong item or a stray item has no photo. It cannot be completed without one — take a photo of that position.",
  "page.intakeDesk.putAway.error.wrongItemUnrecognized": "Not completed: this wrong item was shipped from China. The item that arrived is restocked — please pick it from the catalogue under “Arrived instead”.",
  "page.intakeDesk.putAway.error.onSiteCheckOpen": "Not completed: a position is still set to “Check on site”. Choose “Defect” or “Fine” there first — that decides whether the label fee is charged.",
  "page.intakeDesk.complete.blocked.defectCountedReceived": "A confirmed defect is counted as “Fine” — that would put the goods back into stock. Correct the position first.",
  "page.intakeDesk.complete.blocked.defectPhotoMissing": "A recorded defect is missing its photo.",
  "page.intakeDesk.complete.blocked.photoMissing": "A damaged or opened item, a wrong item or a stray item is missing its photo.",
  "page.intakeDesk.reset": "Undo",
  "page.intakeDesk.resetHint": "Changing your mind? “{button}” first.",
  "page.intakeDesk.photo.heading": "Photo of the item",
  "page.intakeDesk.photo.cardHeading": "{heading} – {item}",
  "page.intakeDesk.photo.openedHeading": "Photo of the opened item",
  "page.intakeDesk.photo.hint": "Scan this code with your phone. No app, no login — the page opens straight into the camera.",
  "page.intakeDesk.photo.missingHeading": "Photo of the contents together with the parcel",
  "page.intakeDesk.photo.qrAlt": "QR code to the mobile photo page",
  "page.intakeDesk.photo.qrEnlarge": "Enlarge QR code",
  "page.intakeDesk.photo.qrClose": "Close",
  "page.intakeDesk.photo.qrDialog": "QR code for scanning",
  "page.intakeDesk.photo.refresh": "Show a new code and load photos",
  "page.intakeDesk.photo.alt": "Photo taken {when}",
  "page.intakeDesk.noteTile.heading": "Note and photo",
  "page.intakeDesk.finish.heading": "Put the return away",
  "page.intakeDesk.finish.explainComplete.one": "“Complete”: the return is completed now. The items that arrived are put away. The missing item has not arrived and will not be refunded.",
  "page.intakeDesk.finish.explainCompleteAsCredit.one": "“Complete”: the return is completed now. The items that arrived are put away. The missing item has not arrived and will not be credited.",
  "page.intakeDesk.finish.explainComplete.other": "“Complete”: the return is completed now. The items that arrived are put away. The {count} missing items have not arrived and will not be refunded.",
  "page.intakeDesk.finish.explainCompleteAsCredit.other": "“Complete”: the return is completed now. The items that arrived are put away. The {count} missing items have not arrived and will not be credited.",
  "page.intakeDesk.finish.explainAwait.one": "“Still coming — clarification”: the items that arrived are put away now. The return stays open as a clarification case.",
  "page.intakeDesk.finish.explainAwait.other": "“Still coming — clarification”: the items that arrived are put away now. The return stays open as a clarification case.",
  "page.intakeDesk.finish.explainAwaitNothing.one": "“Still coming — clarification”: the registered item has not arrived, nothing is put away. The return becomes a clarification case; refund and exchange wait until it is counted or removed from the return.",
  "page.intakeDesk.finish.explainAwaitNothingAsCredit.one": "“Still coming — clarification”: the registered item has not arrived, nothing is put away. The return becomes a clarification case; store credit and exchange wait until it is counted or removed from the return.",
  "page.intakeDesk.finish.explainAwaitNothing.other": "“Still coming — clarification”: the {count} registered items have not arrived, nothing is put away. The return becomes a clarification case; refund and exchange wait until they are counted or removed from the return.",
  "page.intakeDesk.finish.explainAwaitNothingAsCredit.other": "“Still coming — clarification”: the {count} registered items have not arrived, nothing is put away. The return becomes a clarification case; store credit and exchange wait until they are counted or removed from the return.",
  "page.intakeDesk.finish.notYet": "First check arrival and condition of all items.",
  "page.intakeDesk.next.heading": "Next return",
  "page.intakeDesk.next.siblingOpenLead": "Another return of this order is still open — don't forget to continue it:",
  "page.intakeDesk.next.siblingOpenLink": "Continue {name}",
  "page.intakeDesk.siblingPending.one": "Attention: {names} from this order is not completed yet and still needs to be processed.",
  "page.intakeDesk.siblingPending.other": "Attention: {names} from this order are not completed yet and still need to be processed.",
  "page.intakeDesk.switchLocked.one": "You started {names} and have not completed it yet. Finish it there first, then continue with another order.",
  "page.intakeDesk.switchLocked.other": "You started {names} and have not completed them yet. Finish them there first, then continue with another order.",
  "page.intakeDesk.close.running": "Completing … You can already work on the next return. The result will appear here and on the return page.",
  "page.intakeDesk.close.runningSiblingPending": "Completing … The result will appear here and on the return page.",
  "page.intakeDesk.close.locked": "This return is being completed right now. Changes are possible again once the result is in.",
  "page.intakeDesk.close.reload": "Load status",
  "page.intakeDesk.close.decision.refunded": "Completed on the return page: {amount} refunded {rail}.",
  "page.intakeDesk.close.decision.credited": "Completed on the return page: {amount} credited as store credit.",
  "page.intakeDesk.close.decision.refundedMixed": "Completed on the return page: {payment} refunded to the payment method and {storeCredit} credited as store credit.",
  "page.intakeDesk.close.decision.refundedMixedAsPaidCredit": "Completed on the return page: {payment} and {storeCredit} credited as store credit.",
  "page.intakeDesk.close.decision.nothing": "Completed on the return page. There is nothing to refund.",
  "page.intakeDesk.close.decision.nothingAsCredit": "Completed on the return page. There is nothing to credit.",
  "page.intakeDesk.close.decision.completed": "Completed on the return page.",
  "page.intakeDesk.close.decision.notFullyBooked": "Handled on the return page — the refund is not fully booked. See the return page for details.",
  "page.intakeDesk.close.decision.notFullyBookedAsCredit": "Handled on the return page — the store credit is not fully booked. See the return page for details.",
  "page.intakeDesk.finish.alreadyStored": "This return has been put away.",
  "page.intakeDesk.finish.closedNotInStock": "This return is completed, but the goods are not in stock yet.",
  "page.intakeDesk.finish.stored.waiting": "Not finished yet: the refund has not been issued. It is released on the return page — that page says what is still missing.",
  "page.intakeDesk.finish.stored.waitingAsCredit": "Not finished yet: the store credit has not been issued. It is released on the return page — that page says what is still missing.",
  "page.intakeDesk.finish.stored.refunded": "Finished: put away, and the refund is booked.",
  "page.intakeDesk.finish.stored.refundedAsCredit": "Finished: put away, and the store credit is booked.",
  "page.intakeDesk.finish.stored.refundedNotInStock": "Completed, and the refund is booked.",
  "page.intakeDesk.finish.stored.refundedNotInStockAsCredit": "Completed, and the store credit is booked.",
  "page.intakeDesk.finish.stored.nothing": "Finished: put away, there is nothing to refund.",
  "page.intakeDesk.finish.stored.nothingAsCredit": "Finished: put away, there is nothing to credit.",
  "page.intakeDesk.finish.stored.nothingNotInStock": "Completed. There is nothing to refund.",
  "page.intakeDesk.finish.stored.nothingNotInStockAsCredit": "Completed. There is nothing to credit.",
  "page.intakeDesk.finish.stockRemaining.note": "Not yet in stock: {articles}.",
  "page.intakeDesk.finish.stockRemaining.button": "Stock items",
  "page.intakeDesk.finish.stockRemaining.done": "Put into stock: {articles}.",
  "page.intakeDesk.finish.stockRemaining.nothing": "There is nothing left to stock. Nothing was changed.",
  "page.intakeDesk.finish.stored.booking": "Not finished yet: the refund has been released but is not booked yet. Whether the booking is still running or got stuck is shown on the return page.",
  "page.intakeDesk.finish.stored.bookingAsCredit": "Not finished yet: the store credit has been released but is not booked yet. Whether the booking is still running or got stuck is shown on the return page.",
  "page.intakeDesk.finish.stored.failed": "Not finished yet: the refund failed. The return page says why.",
  "page.intakeDesk.finish.stored.failedAsCredit": "Not finished yet: the store credit failed. The return page says why.",
  "page.intakeDesk.finish.stored.declined": "The refund was declined. Whether anything is left to do is shown on the return page.",
  "page.intakeDesk.finish.stored.declinedAsCredit": "The store credit was declined. Whether anything is left to do is shown on the return page.",
  "page.intakeDesk.finish.stored.withdrawn": "Not finished yet: the release of the refund was withdrawn. On the return page it is evaluated again and released again.",
  "page.intakeDesk.finish.stored.withdrawnAsCredit": "Not finished yet: the release of the store credit was withdrawn. On the return page it is evaluated again and released again.",
  "page.intakeDesk.finish.stored.unevaluated": "Not finished yet: no refund has been calculated for this return yet. The return page shows where it stands.",
  "page.intakeDesk.finish.stored.unevaluatedAsCredit": "Not finished yet: no store credit has been calculated for this return yet. The return page shows where it stands.",
  "page.intakeDesk.finish.stocked.pending": "Will be put away",
  "page.intakeDesk.finish.stocked.done": "Put away",
  "page.intakeDesk.finish.stocked.before": "Already put away",
  "page.intakeDesk.finish.withheld.pending": "Will not be put away",
  "page.intakeDesk.finish.withheld.done": "Not put away",
  "page.intakeDesk.finish.sealedPairs.pairs.one": "{count} pair {title}",
  "page.intakeDesk.finish.sealedPairs.pairs.other": "{count} pairs {title}",
  "page.intakeDesk.finish.sealedPairs.defaultVariant": "1 pair",
  "page.intakeDesk.finish.sealedPairs.notStored": "Put the return away first — the sealed pairs go into stock when you complete it.",
  "page.intakeDesk.finish.wrongItems.notStored": "Put the return away first — the item that arrived goes into stock when you complete it.",
  "page.intakeDesk.finish.reason.damageOpen": "Damaged, decision pending",
  "page.intakeDesk.finish.reason.sentBack": "Sent back to the customer",
  "page.intakeDesk.finish.reason.packSplit": "Hygiene bundle, opened — does not go back into stock",
  "page.intakeDesk.finish.reason.opened": "Opened (hygiene item) — will be destroyed",
  "page.intakeDesk.finish.damaged.heading.one": "Damaged item",
  "page.intakeDesk.finish.damaged.heading.other": "Damaged items",
  "page.intakeDesk.finish.damaged.notRestocked.one": "The item is damaged and {emphasis}.",
  "page.intakeDesk.finish.damaged.notRestocked.other": "The items are damaged and {emphasis}.",
  "page.intakeDesk.finish.damaged.notRestockedEmphasis": "will not be put back into stock",
  "page.intakeDesk.finish.damaged.consequence.one": "{emphasis} for this item.",
  "page.intakeDesk.finish.damaged.consequence.other": "{emphasis} for these items.",
  "page.intakeDesk.finish.damaged.noExchange": "No exchange will be made",
  "page.intakeDesk.finish.damaged.noRefund": "No refund will be made",
  "page.intakeDesk.finish.damaged.noRefundAsCredit": "No store credit will be given",
  "page.intakeDesk.finish.damaged.noStoreCredit": "No store credit will be issued",
  "page.intakeDesk.finish.line": "{quantity}x {title}",
  "page.intakeDesk.putAway.hook.noHook": "The target is your inventory system, but no connection is configured.",
  "page.intakeDesk.putAway.hook.httpError": "Your inventory system answered with an error.",
  "page.intakeDesk.putAway.hook.contract": "Your inventory system's answer does not match the agreed format.",
  "page.intakeDesk.putAway.hook.rejected": "Your inventory system rejected the goods.",
  "page.intakeDesk.putAway.done": "Put away. The dispositions are with Shopify.",
  "page.intakeDesk.putAway.error.notInspected": "Not every item has a verdict yet.",
  "page.intakeDesk.putAway.error.nothingToStore": "Nothing to put away — every counted item is missing. Use “Needs clarification” or “Item not coming – remove from return” instead of putting away.",
  "page.intakeDesk.putAway.error.strayOnly": "Nothing put away — only the stray item arrived. The return is now a clarification case.",
  "page.intakeDesk.putAway.error.rejectedMoney": "Not closed: retuno calculated money for goods that were not accepted. No money is paid for goods that were not accepted. Nothing was booked or changed; please check the calculation on the return. Calculated amount:",
  "page.intakeDesk.putAway.error.paidNotStored": "The refund is booked at Shopify, but the goods are NOT put away: Shopify reported the first call as an error and refunded anyway, and the second call without money failed. The next put-away only catches up the goods — no money moves again.",
  "page.intakeDesk.putAway.error.paidNotStoredAsCredit": "The store credit is booked at Shopify, but the goods are NOT put away: Shopify reported the first call as an error and credited anyway, and the second call without money failed. The next put-away only catches up the goods — no money moves again.",
  "page.intakeDesk.putAway.error.moneyUnknown": "Shopify refused the put-away — and whether a refund moved could not be read. Check this return's refunds in the Shopify admin before trying again; retuno does not claim that nothing moved.",
  "page.intakeDesk.putAway.error.moneyUnknownAsCredit": "Shopify refused the put-away — and whether a store credit moved could not be read. Check this return's store credits in the Shopify admin before trying again; retuno does not claim that nothing moved.",
  "page.intakeDesk.putAway.error.alreadyStored": "This return has already been put away — nothing new to report to Shopify.",
  "page.intakeDesk.putAway.error.noLocation": "Shopify needs a location for a restock. Pick one under Settings → Warehouse.",
  "page.intakeDesk.putAway.error.noReverseOrder": "Shopify holds no reverse fulfillment order for this return, so there is nothing to dispose.",
  "page.intakeDesk.putAway.error.lineUnmatched": "One checked item has no counterpart at Shopify.",
  "page.intakeDesk.putAway.error.alreadyProcessed": "Shopify has already processed or refunded this return and no longer accepts the counted quantity. Nothing was changed in the inventory.",
  "page.intakeDesk.putAway.error.alreadyProcessedAsCredit": "Shopify has already processed or credited this return and no longer accepts the counted quantity. Nothing was changed in the inventory.",
  "page.intakeDesk.putAway.error.hookRefused": "Your warehouse system did not accept the goods.",
  "page.intakeDesk.putAway.error.shopifyRefused": "Shopify refused the put-away.",
  "page.intakeDesk.putAway.error.approveRefused": "Shopify refused to accept the request. Nothing was put away.",
  "page.intakeDesk.putAway.error.clarificationOpen": "Not completed: this return is flagged for clarification. Resolve it first — goods and money do not move on a return the warehouse is questioning.",
  "page.intakeDesk.putAway.error.damagedPending": "Not completed: there is no decision on “Damaged” yet. Decide on the return page — send it back to the customer, accept it after all or issue goodwill store credit.",
  "page.intakeDesk.putAway.error.claimBusy": "This is already running — a second click does not complete it again.",
  "page.intakeDesk.putAway.state.CANCELED": "This return has been cancelled — there is nothing to put away.",
  "page.intakeDesk.putAway.state.DECLINED": "This return has been cancelled — there is nothing to put away.",
  "page.intakeDesk.putAway.approved": "Request accepted.",
  "page.intakeDesk.putAway.request.stocked": "Request accepted: items put away.",
  "page.intakeDesk.putAway.request.refunded": "Request accepted: items put away and {amount} refunded.",
  "page.intakeDesk.putAway.request.credited": "Request accepted: items put away and {amount} credited as store credit.",
  "page.intakeDesk.putAway.request.refundedMixed": "Request accepted: items put away, {payment} refunded to the payment method and {storeCredit} credited as store credit.",
  "page.intakeDesk.putAway.request.refundedMixedAsPaidCredit": "Request accepted: items put away, {payment} and {storeCredit} credited as store credit.",
  "page.intakeDesk.putAway.request.closedZero": "Request accepted: items put away, nothing to refund.",
  "page.intakeDesk.putAway.request.closedZeroAsCredit": "Request accepted: items put away, nothing to credit.",
  "page.intakeDesk.putAway.despiteErrors": "Shopify reported an error on the first attempt and refunded anyway. The goods were then put away without another refund.",
  "page.intakeDesk.putAway.despiteErrorsAsCredit": "Shopify reported an error on the first attempt and credited anyway. The goods were then put away without another store credit.",
  "page.intakeDesk.putAway.partial": "Put away. {booked} of {wanted} were refunded; you can release the rest on the return.",
  "page.intakeDesk.putAway.partialAsCredit": "Put away. {booked} of {wanted} were credited; you can release the rest on the return.",
  "page.intakeDesk.putAway.booked": "Put away and refunded: {amount} {rail}.",
  "page.intakeDesk.putAway.bookedNoRefundId": "Put away and refunded: {amount} {rail}.",
  "page.intakeDesk.putAway.bookedMixed": "Put away: {payment} refunded to the payment method and {storeCredit} credited as store credit.",
  "page.intakeDesk.putAway.bookedMixedAsPaidCredit": "Put away: {payment} and {storeCredit} credited as store credit.",
  "page.intakeDesk.putAway.credited": "Put away and credited as store credit: {amount}.",
  "page.intakeDesk.putAway.bonusFollows": "The store-credit bonus of {bonus} follows as a second booking.",
  "page.intakeDesk.putAway.moneyFailed": "Put away, but Shopify refused the refund. You can release it again on the return.",
  "page.intakeDesk.putAway.moneyFailedAsCredit": "Put away, but Shopify refused the store credit. You can release it again on the return.",
  "page.intakeDesk.putAway.rail.payment": "to the payment method",
  "page.intakeDesk.putAway.skipped.no_evaluation": "Put away without a refund: the rules could not be evaluated. The return shows why.",
  "page.intakeDesk.putAway.skipped.no_evaluationAsCredit": "Put away without a store credit: the rules could not be evaluated. The return shows why.",
  "page.intakeDesk.putAway.skipped.clarify": "Put away without a refund: the rules could not decide — the return is a clarification case and waits for a person.",
  "page.intakeDesk.putAway.skipped.clarifyAsCredit": "Put away without a store credit: the rules could not decide — the return is a clarification case and waits for a person.",
  "page.intakeDesk.putAway.skipped.already_executed": "Put away. The refund had already been booked earlier — nothing was booked twice.",
  "page.intakeDesk.putAway.skipped.already_executedAsCredit": "Put away. The store credit had already been booked earlier — nothing was booked twice.",
  "page.intakeDesk.putAway.skipped.already_refunded_at_shopify": "Put away without a refund: since this return was requested, Shopify holds a refund with money – on the return or on the order without a link to any return. retuno does not book a second one.",
  "page.intakeDesk.putAway.skipped.already_refunded_at_shopifyAsCredit": "Put away without a store credit: since this return was requested, Shopify holds a refund with money – on the return or on the order without a link to any return. retuno does not book a second one.",
  "page.intakeDesk.putAway.skipped.in_progress": "Put away without a refund: a release is already in progress on the return.",
  "page.intakeDesk.putAway.skipped.in_progressAsCredit": "Put away without a store credit: a release is already in progress on the return.",
  "page.intakeDesk.putAway.skipped.zero_amount": "Put away. There is nothing to refund (0.00).",
  "page.intakeDesk.putAway.skipped.zero_amountAsCredit": "Put away. There is nothing to credit (0.00).",
  "page.intakeDesk.putAway.closedZero": "Put away and closed. There is nothing to refund (0.00) — no approval is needed any more.",
  "page.intakeDesk.putAway.closedZeroAsCredit": "Put away and closed. There is nothing to credit (0.00) — no approval is needed any more.",
  "page.intakeDesk.putAway.closedZeroExchange": "Put away and closed.",
  "page.intakeDesk.putAway.skipped.store_credit_unavailable": "Put away without a refund: the customer asked for store credit, but this shop runs classic customer accounts. Release it on the return once that is settled.",
  "page.intakeDesk.putAway.skipped.store_credit_unavailableAsCredit": "Put away without a store credit: the customer asked for store credit, but this shop runs classic customer accounts. Release it on the return once that is settled.",
  "page.intakeDesk.putAway.skipped.no_refundable_transaction": "Put away without a refund: the order carries no successful payment to refund against. Release it on the return once that is settled.",
  "page.intakeDesk.putAway.skipped.no_decider": "Put away without a refund: this session carries no user who could sign the release.",
  "page.intakeDesk.putAway.skipped.no_deciderAsCredit": "Put away without a store credit: this session carries no user who could sign the release.",
  "page.intakeDesk.putAway.skipped.mixed_rails": "Put away without a refund: this return pays partly to the payment method and partly as store credit. The approval on the return books that, not the receiving desk.",
  "page.intakeDesk.putAway.skipped.not_sent": "Put away without a refund: retuno did not send the refund to Shopify. The return page shows what happens next.",
  "page.intakeDesk.putAway.skipped.not_sentAsCredit": "Put away without a store credit: retuno did not send the store credit to Shopify. The return page shows what happens next.",
  "page.intakeDesk.putAway.skipped.awaiting_missing": "Put away without a refund: an item is still missing. Refund and exchange follow once it is counted or removed from the return.",
  "page.intakeDesk.putAway.skipped.awaiting_missingAsCredit": "Put away without a store credit: an item is still missing. Store credit and exchange follow once it is counted or removed from the return.",
  "page.intakeDesk.putAway.skipped.clarification_open": "Put away without a refund: the return is a clarification case — refund, exchange or rejection are decided on the return page.",
  "page.intakeDesk.putAway.skipped.clarification_openAsCredit": "Put away without a store credit: the return is a clarification case — store credit, exchange or rejection are decided on the return page.",
  "page.intakeDesk.putAway.skipped.clarification_openExchange": "Put away, exchange held back: the return is a clarification case — exchange or rejection are decided on the return page.",
  "page.intakeDesk.finish.moneyUnknown": "Nothing is refunded yet — you decide about the money afterwards on the return page.",
  "page.intakeDesk.finish.moneyUnknownAsCredit": "Nothing is credited yet — you decide about the money afterwards on the return page.",
  "page.intakeDesk.finish.moneyHeldBecause": "Nothing is refunded yet ({reasons}) — you decide about the money afterwards on the return page.",
  "page.intakeDesk.finish.moneyHeldBecauseAsCredit": "Nothing is credited yet ({reasons}) — you decide about the money afterwards on the return page.",
  "page.intakeDesk.finish.exchangeHeld": "The exchange is not triggered yet — you decide about the exchange afterwards on the return page.",
  "page.intakeDesk.finish.exchangeHeldBecause": "The exchange is not triggered yet ({reasons}) — you decide about the exchange afterwards on the return page.",
  "page.intakeDesk.missing.exchangeWithheld": "Exchange items withheld: {lines}.",
  "page.intakeDesk.missing.heading": "Clarification: item missing",
  "page.intakeDesk.missing.headingStray": "Clarification: stray item — registered item missing",
  "page.intakeDesk.missing.lineMissing": "Missing: {lines}",
  "page.intakeDesk.missing.waits": "Refund and exchange wait until the item is counted or removed from the return.",
  "page.intakeDesk.missing.waitsAsCredit": "Store credit and exchange wait until the item is counted or removed from the return.",
  "page.intakeDesk.missing.ifArrives": "If it arrives: reset the item, count it as “OK”, complete.",
  "page.intakeDesk.missing.ifNot": "If it does not:",
  "page.intakeDesk.missing.writeOff": "Item not coming – remove from return",
  "page.intakeDesk.missing.writeOffPending": "Removing …",
  "page.intakeDesk.missing.writeOffDone": "Item removed from the return: {lines}. There is no refund and no exchange for it. Now complete the return.",
  "page.intakeDesk.missing.writeOffDoneAsCredit": "Item removed from the return: {lines}. There is no store credit and no exchange for it. Now complete the return.",
  "page.intakeDesk.missing.await": "Still coming — clarification",
  "page.intakeDesk.missing.hint": "Missing: Item not in the parcel — not put into stock, no exchange and no refund is triggered. Photograph the contents together with the parcel.",
  "page.intakeDesk.missing.hintAsCredit": "Missing: Item not in the parcel — not put into stock, no exchange and no store credit is triggered. Photograph the contents together with the parcel.",
  "page.intakeDesk.missing.error.nothingMissing": "Nothing to remove from the return: no item of this return is counted as missing and still open at Shopify.",
  "page.intakeDesk.missing.error.shopifyRefused": "Shopify refused to remove the units:",
  "page.intakeDesk.missing.error.inProgress": "This is already running — a second click does not remove anything again.",
  "page.intakeDesk.missing.error.unclear": "Shopify did not answer — it is unclear whether the items were removed from the return. Check the return in Shopify. If they are still there, the button works again after 15 minutes.",
  "page.intakeDesk.missing.error.nothingAwaited": "No clarification opened: no item of this return is counted as missing.",
  "page.intakeDesk.missing.awaitUndecided": "“Still coming — clarification” only works once every item has a state. Still without a state: {articles}.",
  "page.intakeDesk.missing.error.notDecided": "No clarification opened: not every item has a state yet. First record arrival and state for every item, then “Still coming — clarification”.",
  "page.intakeDesk.missing.error.alreadyCompleted": "This return is already completed — nothing was booked again.",
  "page.intakeDesk.missing.awaitedHeading": "Put away — waiting for the missing item",
  "page.intakeDesk.missing.awaitedEmptyHeading": "Clarification opened — waiting for the missing item",
  "page.intakeDesk.missing.awaitedNothingStocked": "Nothing was put away: nothing arrived.",
  "page.intakeDesk.defectRelease.notice": "Defect confirmed, but the exchange item is still withheld ({count}×). It replaces the defective item — “Release exchange item” creates it in Shopify for shipping. No money is paid.",
  "page.intakeDesk.defectRelease.button": "Release exchange item — defect confirmed",
  "page.intakeDesk.defectRelease.pending": "Releasing …",
  "page.intakeDesk.defectRelease.done": "Exchange item released ({count}×) — Shopify creates the replacement for shipping.",
  "page.intakeDesk.defectRelease.error.notStored": "Not stored yet: the exchange item is created with “Complete”. Nothing released.",
  "page.intakeDesk.defectRelease.error.reviewOpen": "The refund calculation is waiting for approval. The exchange item is created with the approval on the return page. Nothing released.",
  "page.intakeDesk.defectRelease.error.reviewOpenAsCredit": "The store credit calculation is waiting for approval. The exchange item is created with the approval on the return page. Nothing released.",
  "page.intakeDesk.defectRelease.error.awaitingMissing": "Not yet: an item is still missing. The exchange item is created only once it is counted or removed from the return.",
  "page.intakeDesk.defectRelease.error.nothingToRelease": "No exchange item is withheld any more that a confirmed defect covers. Nothing released.",
  "page.intakeDesk.defectRelease.error.shopifyRefused": "Shopify refused the release. Nothing released.",
  "page.intakeDesk.defectRelease.error.inProgress": "This is already running — a second click does not create the replacement again.",
  "page.intakeDesk.defectRelease.error.unclear": "Shopify did not answer — it is unclear whether the replacement was created. Check the order in Shopify. If there is no replacement, the button works again after 15 minutes.",
  "page.intakeDesk.finish.exchange.done": "Exchange items: {released} released, {withheld} withheld.",
  "page.intakeDesk.finish.exchange.heldForReview": "The exchange item is only created in Shopify once you approve the review.",
  "page.intakeDesk.finish.exchange.heldNoEvaluation": "The exchange item is not created in Shopify yet — there is no evaluation for this return. Open the return.",
  "page.intakeDesk.finish.exchange.awaitingPayment": "Shopify holds the exchange shipment until the customer pays the difference — the return page shows the invoice state.",
  "page.intakeDesk.finish.missingOpen": "Still missing and left open at Shopify: {count}. See the clarification above.",
  "page.intakeDesk.finish.missingRemoved": "Removed from the return: {lines}. Shopify no longer expects them, no exchange item will be made for them, and the refund leaves them out.",
  "page.intakeDesk.finish.missingRemovedAsCredit": "Removed from the return: {lines}. Shopify no longer expects them, no exchange item will be made for them, and the store credit leaves them out.",
  "page.intakeDesk.finish.missingRemovalRefused": "Not removed from the return: Shopify refused.",
  "page.intakeDesk.finish.stockNotRestocked": "Shopify’s stock was not restored for these items.",
  "page.intakeDesk.error.emptyNote": "A note without text says nothing.",
  "page.intakeDesk.error.unknownIntent": "That verdict does not exist.",
  "page.intakeDesk.error.unknownLine": "That item is not part of this return.",
  "page.intakeDesk.error.onSiteCheckFirst": "This position is set to “Check on site”. Choose “Defect” or “Fine” first — nothing recorded.",
  "page.intakeDesk.onSiteCheck.hint": "Check on site: you decide here whether it is a defect. “Fine” means no defect, and the label fee is charged.",
  "page.intakeDesk.onSiteCheck.hintNoLabel": "Check on site: you decide here whether it is a defect. “Fine” means no defect. No label fee applies — there was no return label from retuno.",
  "page.intakeDesk.onSiteCheck.hintExchange": "Check on site: you decide here whether it is a defect. “Fine” means no defect. No money is paid back (exchange), so the label fee is not charged.",
  "page.intakeDesk.onSiteCheck.notice": "Please check on site: note the customer's comment.",
  "page.intakeDesk.rejectBlocked.exchange": "For an exchange, first choose “{button}”, then mark it as not accepted.",
  "page.intakeDesk.rejectBlocked.exchangeUnmapped": "Not accepting is not possible here: the return contains an exchange that retuno cannot assign to a position. Please open a clarification case.",
  "page.intakeDesk.rejectExchange.done": "Counted as not accepted. The exchange is withdrawn in retuno: no exchange item goes out when you complete.",
  "page.intakeDesk.rejectExchange.nothingSaved": "Nothing saved — neither the refund nor “Not accepted”.",
  "page.intakeDesk.rejectExchange.alreadyCounted": "Everything at this position is already counted. “Not accepted” only works while it is open.",
  "page.intakeDesk.openedExchange.done": "Opened recorded – exchange or refund is decided on the return page.",
  "page.intakeDesk.openedExchange.decided": "Opened. Decided on the return page: {decision}.",
  "page.intakeDesk.openedExchange.error.decided": "This opened item has already been decided on the return page. It can no longer be reset. Nothing changed.",
  "page.intakeDesk.openedExchange.nothingSaved": "Nothing saved — neither the refund nor “Opened”.",
  "page.intakeDesk.openedExchange.alreadyCounted": "Everything at this position is already counted. “Opened” only works while it is open.",
  "page.intakeDesk.error.rejectExchange": "“Not accepted” is not possible at an exchange position. Nothing recorded — the reason is shown at the position.",
  "page.intakeDesk.error.damagedMeansRejected": "In this shop “Damaged” opens a clarification case. Please reload the page and choose “Damaged” again. Nothing was recorded.",
  "page.intakeDesk.error.damagedUndecided": "The “Damaged” clarification stays open until there is a decision on the return page — send it back to the customer, accept it after all or issue goodwill store credit. Nothing changed.",
  "page.intakeDesk.error.packSplitUndecided": "The clarification stays open until the exchange of this bundle is decided on the return page. Nothing changed.",
  "page.intakeDesk.error.openedExchangeUndecided": "The clarification stays open until exchange or refund of the opened item is decided on the return page. Nothing changed.",
  "page.intakeDesk.error.sendBackRequested": "A return shipment is requested for this item. First remove the “Request return shipment” tick on the return page, then undo. Nothing changed.",
  "page.intakeDesk.damagedMeansRejected.hint.received": "Fine: The item is in perfect condition. It is put into stock, and the exchange or refund is triggered.",
  "page.intakeDesk.damagedMeansRejected.hint.receivedAsCredit": "Fine: The item is in perfect condition. It is put into stock, and the exchange or store credit is triggered.",
  "page.intakeDesk.damagedMeansRejected.hint.defect": "Defect: The item is defective – the item is not put into stock and is disposed of by you. The exchange or refund is triggered.",
  "page.intakeDesk.damagedMeansRejected.hint.defectAsCredit": "Defect: The item is defective – the item is not put into stock and is disposed of by you. The exchange or store credit is triggered.",
  "page.intakeDesk.damagedMeansRejected.hint.defectNoted": "Defective: the customer did not report a defect – it is only noted (defect collection). The return stays a normal one: label fee as per your rule. The item is not put into stock.",
  "page.intakeDesk.damagedMeansRejected.hint.damaged": "Damaged: The item has been worn – a clarification case is opened – check back with the customer.",
  "page.intakePhoto.title": "Photo of the item",
  "page.intakePhoto.choose": "Take a photo",
  "page.intakePhoto.submit": "Attach photo",
  "page.intakePhoto.submitMany": "Attach {count} photos",
  "page.intakePhoto.another": "Take another photo",
  "page.intakePhoto.remove": "Remove",
  "page.intakePhoto.taken": "Attached so far",
  "page.intakePhoto.alt": "Photo taken {when}",
  "page.intakePhoto.doneHint": "The photo is on the return. You can close this page.",
  "page.intakePhoto.doneHintMany": "The photos are attached to the return. You can close this page.",
  "page.intakePhoto.titleReturn": "Photo for the return",
  "page.intakePhoto.draftSubtitle": "for the return being recorded",
  "page.intakePhoto.doneHintDraft": "The photo will be attached when the return is recorded. You can close this page.",
  "page.intakePhoto.doneHintDraftMany": "The photos will be attached when the return is recorded. You can close this page.",
  "page.intakePhoto.denied": "This link is not valid.",
  "page.intakePhoto.expired": "This link has expired. Scan the code on the screen again.",
  "page.intakePhoto.recorded": "This return has already been recorded. Use the “Photo by phone” code on the return.",
  "page.intakePhoto.tooLarge": "The photo is too large.",
  "page.intakePhoto.limit": "Up to {size} per photo, at most {count} photos at once.",
  "page.intakePhoto.preparing": "Preparing photo …",
  "page.intakePhoto.empty": "No photo arrived.",
  "page.intakePhoto.truncated": "The file is empty or damaged — fewer than twelve bytes arrived. Take the photo again.",
  "page.intakePhoto.unsupported": "That file is not an image we accept.",
  "page.intakePhoto.tooMany": "Too many photos at once – at most {count}. Send the rest afterwards.",
  "page.intakePhoto.tooLargeTogether": "Together the photos are too large. Send them in two batches.",
  "page.intakeManual.renewal.back": "The return you just created, {rma}, is canceled. Everything you entered is back — check it and send it again.",
  "page.intakeManual.renewal.intro": "Prefilled from the cancelled return {rma}: quantities and reason as before, as far as Shopify still lists the items as returnable today. Check the details and submit — this creates a new return.",
  "page.intakeManual.renewal.gapMissing": "{title}: not prefilled — Shopify does not list this item as returnable today, or the return no longer carries its identifier.",
  "page.intakeManual.renewal.gapReduced": "{title}: only {available} of {wanted} still returnable — the quantity is prefilled accordingly.",
  "page.intakeManual.renewal.reasonMixed": "The lines of the cancelled return carried different reasons — prefilled per line, please check.",
  "page.intakeManual.renewal.notCanceled": "Return {rma} is not cancelled — prefilling only works from a cancelled return. The form is available as usual.",
  "page.intakeManual.renewal.unknown": "There is no return with this identifier — nothing prefilled.",
  "page.intakeManual.title": "Capture a return",
  "page.intakeManual.scanned": "Scanned:",
  "page.intakeManual.orderLabel": "Order number — or name, e-mail, address",
  "page.intakeManual.search.none": "No order for “{query}” — neither as an order number nor in free text over name, e-mail and delivery address.",
  "page.intakeManual.search.window": "Shopify shows the app orders from the last 60 days only. An older order will not turn up here even though it exists — then only the Shopify admin helps.",
  "page.intakeManual.search.tooShort": "Searching by name, e-mail or address needs at least {min} characters — no order number matched.",
  "page.intakeManual.search.manyHeading": "Several orders match — which one is it?",
  "page.intakeManual.search.manyBody": "Pick the order the parcel came from. Date, recipient and delivery address tell the rows apart.",
  "page.intakeManual.search.viaText": "Found by name, e-mail or address — no order number matched what you typed.",
  "page.intakeManual.search.capped": "More than {limit} orders match — only the {limit} most recent are listed. Narrow it down: last name and town, the e-mail address, or street and house number.",
  "page.intakeManual.orderSubmit": "Find order",
  "page.intakeManual.back": "Back",
  "page.intakeManual.photoAgain": "The canceled return had a photo — it does not carry over. Please take it again with your phone using the code below. Everything else you entered is still here.",
  "page.intakeManual.photoDraft.kept": "The photo is saved and will be attached to the return when you record it.",
  "page.intakeManual.photoDraft.attach": "Attach photo from {taken} ({size})",
  "page.fileChoose.button": "Choose file",
  "page.fileChoose.stored": "A file is already stored.",
  "page.fileChoose.chosen": "Chosen file:",
  "page.intakeManual.photo.choose": "Choose photo",
  "page.intakeManual.photo.hint": "Photograph and document the customer's note or a different exchange wish",
  "page.intakeManual.photo.required": "Required for an exchange or store credit, not for a plain refund.",
  "page.intakeManual.photo.prompt": "An exchange or store credit needs a photo of the delivery note.",
  "page.intakeManual.photoQr.heading": "Photo by phone",
  "page.intakeManual.photoQr.hint": "Scan the code and photograph the delivery note or the note. The photo is attached to the return when you record it — you don't need to reload this page. The code is valid for 30 minutes.",
  "page.intakeManual.pickLines": "Which products are in the return?",
  "page.intakeManual.ofQuantity": "of {quantity}",
  "page.intakeManual.reason": "Reason",
  "page.intakeManual.reasonEmpty": "Please choose",
  "page.intakeManual.otherLines": "Other items on this order — not capturable here:",
  "page.intakeManual.defectWindow": "For a defect: store credit or replacement until {date}.",
  "page.intakeManual.defectWindowLoyal": "For a defect: store credit or replacement until {date}, for loyal customers until {loyalDate}.",
  "page.intakeManual.defectWindowLoyalReached": "In case of a defect: store credit or replacement until {loyalDate}. This customer is a loyal customer – their spending with you has reached {threshold}.",
  "page.intakeManual.defectWindowLoyalNotReached": "In case of a defect: store credit or replacement until {date}. This customer is not a loyal customer – their spending with you is below {threshold}; for loyal customers it would be {loyalDate}.",
  "page.intakeManual.defectWindowLoyalUnknown": "In case of a defect: store credit or replacement until {date}, for loyal customers until {loyalDate}. Whether this customer is a loyal customer cannot be told right now: {reason}.",
  "page.intakeManual.loyaltyUnknown.noAccount": "they have no customer account",
  "page.intakeManual.loyaltyUnknown.currency": "their spending is in another currency",
  "page.intakeManual.loyaltyUnknown.unavailable": "Shopify did not return their spending",
  "page.intakeManual.existingReturns.one": "There is already a return for this order:",
  "page.intakeManual.existingReturns.other": "There are already returns for this order:",
  "page.intakeManual.existingReturns.toDesk": "Open at the intake desk",
  "page.intakeManual.existingReturns.toReturn": "Open the full return",
  "page.intakeManual.existingReturnsHint.one": "If these are the announced items, process them there – here you would create a second return.",
  "page.intakeManual.existingReturnsHint.other": "If these are the announced items, process them there – here you would create another return.",
  "page.intakeManual.otherLines.notShipped": "not shipped yet",
  "page.intakeManual.otherLines.inReturn": "already in return",
  "page.intakeManual.otherLines.notReturnable": "Shopify does not release this item for return",
  "page.intakeManual.error.outcomeInvalid": "This line cannot receive that outcome. Nothing was created.",
  "page.intakeManual.error.slipPhotoMissing": "An exchange or store credit needs a photo of the delivery note. Take it via the code under “Photo by phone” and then register again.",
  "page.intakeManual.outcome.storeCreditUnavailable": "Store credit is not possible here — the order has no customer account, or the item is excluded from it.",
  "page.intakeManual.outcome.storeCredit": "Store credit",
  "page.intakeManual.error.targetMissing": "An item marked for exchange has no exchange item. Nothing was created.",
  "page.intakeManual.error.strayWithOther": "“Stray item” can’t be combined with “A different item was in the parcel” or with damaged or opened items on the same line. Please choose one. Nothing was created.",
  "page.intakeManual.error.targetInvalid": "That exchange item cannot be chosen for this line. Nothing was created.",
  "page.intakeManual.error.exchangeNotOffered": "The shop does not offer an exchange for this order — the exchange settings exclude it. Choose a refund or store credit. Nothing was created.",
  "page.intakeManual.exchangeOffer.disabled": "No exchange here: exchanges are switched off in the exchange settings — the same rule as in the customer portal.",
  "page.intakeManual.exchangeOffer.country": "No exchange here: the delivery country {detail} is not on the country list of the exchange settings — the same rule as in the customer portal.",
  "page.intakeManual.exchangeOffer.order_tag": "No exchange here: the order carries the tag “{detail}”, which the exchange settings exclude — the same rule as in the customer portal.",
  "page.intakeManual.exchangeWindowPassed": "The exchange window ended on {date} — you decide at the desk.",
  "page.intakeManual.window.within": "The return window runs until {date} — a refund is allowed, and you can finish this return here.",
  "page.intakeManual.window.expired": "The return window ended on {date} — this return goes to review. Add a note saying why.",
  "page.intakeManual.window.waived": "The return window ended on {date}. This order is on the allow list, so no window applies to it — a refund is allowed, and you can finish this return here.",
  "page.intakeManual.window.extended": "The return window ended on {date}. The allow list extends it for this order until {extendedTo} — a refund is allowed, and you can finish this return here.",
  "page.intakeManual.window.extensionPassed": "The return window ended on {date}, and the extension from the allow list ended on {extendedTo} too — this return goes to review. Add a note saying why.",
  "page.intakeManual.window.allowedAfterExpiry": "The return window ended on {date}. Your settings refund anyway — you can finish this return here.",
  "page.intakeManual.window.loyaltyWaived": "The return window ended on {date}. No window applies to loyal customers (spend from {threshold}) — a refund is allowed, and you can finish this return here.",
  "page.intakeManual.window.loyaltyExtended": "The return window ended on {date}. For loyal customers (spend from {threshold}) it is extended until {extendedTo} — a refund is allowed, and you can finish this return here.",
  "page.intakeManual.window.loyaltyExtensionPassed": "The return window ended on {date}, and the extension for loyal customers (spend from {threshold}) ended on {extendedTo} too — this return goes to review. Add a note saying why.",
  "page.intakeManual.error.exchangeReasonBlocked": "The same variant again is only offered for certain return reasons. It does not work with the reason chosen here — another reason, or another variant, does. Nothing was created.",
  "page.intakeManual.outcome.exchange": "Exchange",
  "page.intakeManual.target": "Exchange item",
  "page.intakeManual.targetSave": "Save",
  "page.intakeManual.targetOther": "Choose a different exchange item",
  "page.intakeManual.surcharge": "The customer pays the surcharge. The exchange item only ships after payment.",
  "page.intakeManual.targetUnavailable": "Exchange is not possible here — the product has no selectable other variant, or the exchange rules allow none.",
  "page.intakeManual.outcome.refund": "Refund to the payment method",
  "page.intakeManual.outcome": "What does the customer want?",
  "page.intakeManual.note": "Note",
  "page.intakeManual.clarify": "Open as a clarification right away",
  "page.intakeManual.clarifyHint": "The note then becomes the reason of the clarification. The return cannot be completed until it is resolved.",
  "page.intakeManual.submit": "Capture",
  "page.intakeManual.submitDefault": "Keyboard path: records the return",
  "page.intakeManual.error.damagedTooMany": "One line reports more damaged units than came back. Nothing was created.",
  "page.intakeManual.error.openedExchange": "“of those opened” only works here for a refund or store credit. For an exchange, capture the return without this number and record the opened items at the intake desk afterwards. Nothing was created.",
  "page.intakeManual.error.openedExchangeBundle": "“of those opened” only works for a bundle with a refund or store credit. For an exchange, capture the return without this number; if a pair is opened, open a clarification case at the intake desk. Nothing was created.",
  "page.intakeManual.damaged": "of those damaged",
  "page.intakeManual.damagedHint": "Leave empty if everything is intact. Damaged units are refunded but do not go back into stock.",
  "page.intakeManual.submitWhat": "Creates the return and records its arrival and condition.",
  "page.intakeManual.error.noShop": "No shop is connected.",
  "page.intakeManual.error.orderUnknown": "Shopify does not know that order number.",
  "page.intakeManual.error.noLines": "Pick at least one item.",
  "page.intakeManual.error.noReason": "A line with a quantity is missing its reason. Nothing was created.",
  "page.intakeManual.error.refused": "Shopify refused to create the return. Nothing was created — you can change the details and record it again.",
  "page.intakeManual.error.shopifyReason": "Shopify's reason: {message}",
  "page.intakeManual.error.createdUnfinished": "The return for {order} exists in Shopify, but retuno could not finish recording it. Don't record it again — it would exist twice. Open it at the intake desk and book the arrival there.",
  "page.intakeManual.error.createdLink.open": "Open the return at the intake desk",
  "page.intakeManual.error.createdLink.search": "Search the intake desk for {order}",
  "page.intakeManual.error.photoPending": "The photo is not attached to the return yet — attach it on the return page under “Add a note”.",
  "page.intakeManual.error.unclear": "It is not certain whether Shopify created the return — the answer did not fully arrive. Check order {order} in Shopify before you record it again.",
  "page.settingsWarehouse.title": "Warehouse",
  "page.settingsWarehouse.china.heading": "Shipped from China",
  "page.settingsWarehouse.damaged.heading": "Damaged goods",
  "page.settingsWarehouse.damaged.label": "“Damaged” opens a clarification case: we ask the customer whether they want the item back and decide afterwards.",
  "page.settingsWarehouse.damaged.hint": "When on, the intake desk shows “Fine”, “Defect” and “Damaged”. “Damaged” opens a clarification case; the return is completed only after your decision — send it back to the customer, accept it after all or issue goodwill store credit. When off, “Damaged” means: returned and refunded, but not into stock.",
  "page.settingsWarehouse.damaged.submit": "Save",
  "page.settingsWarehouse.damaged.saved": "Saved. The intake desk shows the matching buttons from now on.",
  "page.settingsWarehouse.china.hint": "Which shipments count as shipped from China. This decides what retuno restocks for a wrong item: if the shipment came from China, the item that actually arrived goes into stock — not the ordered one. A shipment counts if its carrier or its location is listed below — upper or lower case does not matter. If nothing matches, the shipment counts as shipped from your own warehouse.",
  "page.settingsWarehouse.china.carriers": "Carriers",
  "page.settingsWarehouse.china.carriersHint": "One name per line, as Shopify shows it on the shipment, for example “CNE Express”.",
  "page.settingsWarehouse.china.locations": "Locations",
  "page.settingsWarehouse.china.locationsHint": "One location per line, as Shopify shows it on the shipment.",
  "page.settingsWarehouse.china.submit": "Save shipped from China",
  "page.settingsWarehouse.stray.title": "Stray items: flat fee and storage fee",
  "page.settingsWarehouse.stray.off": "off",
  "page.settingsWarehouse.stray.summaryFlat": "flat fee {flat}",
  "page.settingsWarehouse.stray.summaryDaily.one": "{daily} per day after {count} free day",
  "page.settingsWarehouse.stray.summaryDaily.other": "{daily} per day after {count} free days",
  "page.settingsWarehouse.stray.intro": "retuno counts the days from the stray-item message and suggests an amount on the return. It is booked by hand.",
  "page.settingsWarehouse.stray.flat": "Flat fee per stray item",
  "page.settingsWarehouse.stray.flatHint": "Amount in the shop currency, e.g. 4.99. Empty: no flat fee.",
  "page.settingsWarehouse.stray.daily": "Storage fee per day",
  "page.settingsWarehouse.stray.dailyHint": "Amount in the shop currency, e.g. 2.50. Empty: no storage fee. It needs the free days.",
  "page.settingsWarehouse.stray.freeDays": "Free days",
  "page.settingsWarehouse.stray.freeDaysHint": "Whole number from 1 to {max}, counted from the stray-item message; six weeks are 42. Only together with a storage fee.",
  "page.settingsWarehouse.stray.submit": "Save stray-item fees",
  "page.settingsWarehouse.stray.saved": "Stray-item fees saved.",
  "page.settingsWarehouse.stray.error.amountInvalid": "Please enter an amount like 4.99, at most 1000.00.",
  "page.settingsWarehouse.stray.error.daysInvalid": "Please enter a whole number from 1 to 365 for the free days.",
  "page.settingsWarehouse.stray.error.dailyNeedsDays": "A storage fee needs the free days. Nothing saved.",
  "page.settingsWarehouse.stray.error.daysNeedDaily": "Free days only apply together with a storage fee. Nothing saved.",
  "page.settingsWarehouse.china.saved": "Saved. Restocking for wrong items and the photo gallery count follow this from now on.",
  "page.settingsWarehouse.sendBack.heading": "Return shipment to the customer",
  "page.settingsWarehouse.sendBack.dayCount.one": "{count} day",
  "page.settingsWarehouse.sendBack.dayCount.other": "{count} days",
  "page.settingsWarehouse.sendBack.days": "Return shipment possible for this many days after storing",
  "page.settingsWarehouse.sendBack.daysHint": "Also applies to returns already stored. Possible are {minDays} to {maxDays}, the default is {defaultDays}.",
  "page.settingsWarehouse.sendBack.limited": "At most {maxDays}: your retention period deletes a return {returnDays} after the request, and for the idle time between request and storing we allow up to {idleDays}.",
  "page.settingsWarehouse.sendBack.limitedBelowDefault": "Attention: your retention period ({returnDays}) allows at most {maxDays} of return shipment, fewer than the usual {defaultDays}. The reason: for the idle time between request and storing we allow up to {idleDays}, and the return must still be stored until the period ends.",
  "page.settingsWarehouse.sendBack.overLimitNow": "The period currently set ({setDays}) is above this limit. It stays in effect until you save an allowed value here.",
  "page.settingsWarehouse.sendBack.submit": "Save period",
  "page.settingsWarehouse.sendBack.saved": "Saved. The period now applies to every stored return.",
  "page.settingsWarehouse.sendBack.error.notANumber": "Not saved: please enter a whole number of days.",
  "page.settingsWarehouse.sendBack.error.tooLow": "Not saved: the lower limit is {minDays}.",
  "page.settingsWarehouse.sendBack.error.overLimit": "Not saved: the upper limit is {maxDays}.",
  "page.settingsWarehouse.fridayList.heading": "Friday list",
  "page.settingsWarehouse.fridayList.enabled": "Send the Friday list",
  "page.settingsWarehouse.fridayList.enabledHint": "Arrives on Fridays from 6 am, once a week, at the address below: every return shipment that was started and is not yet marked as sent back. Without entries no mail goes out. Switched off, no list ever goes out.",
  "page.settingsWarehouse.fridayList.recipient": "Recipient address",
  "page.settingsWarehouse.fridayList.recipientHint": "The mail names order, item and quantity, but no address of the customer.",
  "page.settingsWarehouse.fridayList.last.one": "Last Friday list: {date}, {count} return shipment",
  "page.settingsWarehouse.fridayList.last.other": "Last Friday list: {date}, {count} return shipments",
  "page.settingsWarehouse.fridayList.submit": "Save list",
  "page.settingsWarehouse.fridayList.saved": "Saved.",
  "page.settingsWarehouse.fridayList.error.recipientMissing": "Not saved: the Friday list cannot be switched on without a recipient address.",
  "page.settingsWarehouse.fridayList.error.recipientInvalid": "Not saved: this is not a valid email address.",
  "page.settingsWarehouse.hubHint": "Where returned goods go, and into which location — the DESTINATION is decided here.",
  "page.settingsWarehouse.saved": "Saved.",
  "page.settingsWarehouse.target": "Where goods go",
  "page.settingsWarehouse.targetHint": "Shopify puts them back into its own inventory. Your own system means Shopify learns the goods came back, but not into its stock.",
  "page.settingsWarehouse.target.shopify": "Back into Shopify's inventory",
  "page.settingsWarehouse.target.external": "Into my own warehouse system",
  "page.settingsWarehouse.location": "Location",
  "page.settingsWarehouse.locationHint": "Shopify requires a location for a restock and does not supply one itself.",
  "page.settingsWarehouse.noLocation": "— not chosen —",
  "page.settingsWarehouse.locationsUnreadable": "Shopify did not return your locations. Usually the connection app is missing the permission to read locations.",
  "page.settingsWarehouse.hookHeading": "Your own warehouse system",
  "page.settingsWarehouse.hookUrl": "Endpoint",
  "page.settingsWarehouse.hookUrlHint": "https only — an order's SKUs travel over this line.",
  "page.settingsWarehouse.hookSecret": "Shared secret",
  "page.settingsWarehouse.hookSecretHint": "Used to sign every message.",
  "page.settingsWarehouse.hookSecretSet": "A secret is stored. Leave empty to keep it.",
  "page.settingsWarehouse.submit": "Save",
  "page.settingsWarehouse.error.noShop": "No shop is connected.",
  "page.settingsWarehouse.error.hookIncomplete": "Your own warehouse system needs an endpoint and a secret.",
  "page.settingsWarehouse.error.hookNotHttps": "The endpoint must start with https://.",
  "page.settingsWarehouse.error.fwgoneTaken": "FWG.ONE is set up as your inventory system. A put-away hook next to it isn't possible — only one connection books stock. Choose “Own interface (put-away hook)” as the connection; it then replaces FWG.ONE.",
  "page.settingsWarehouse.error.fwgoneUntested": "With FWG.ONE, “Into my own warehouse system” can only be chosen after a successful connection test. Nothing changed.",
  "page.settingsWarehouse.booker.shopify": "Books: Shopify — retuno restocks in Shopify and reports nothing to an inventory system.",
  "page.settingsWarehouse.booker.hook": "Books: the put-away hook — retuno books nothing in Shopify.",
  "page.settingsWarehouse.booker.fwgone": "Books: FWG.ONE — retuno books nothing in Shopify.",
  "page.settingsWarehouse.booker.none": "Books: no connection — retuno won't put stock away until a put-away hook, FWG.ONE (successfully tested) or your own HTTP call is set up.",
  "page.settingsWarehouse.connection": "Connection",
  "page.settingsWarehouse.connectionHint": "Which system books returned goods. Only one connection books — the others are then off.",
  "page.settingsWarehouse.connection.fwgone": "FWG.ONE",
  "page.settingsWarehouse.connection.hook": "Own interface (put-away hook)",
  "page.settingsWarehouse.connection.template": "Own HTTP call (template)",
  "page.settingsWarehouse.booker.template": "Books: your own HTTP call — retuno books nothing in Shopify.",
  "page.settingsWarehouse.idleConnection": "Another saved connection does not book: {name}.",
  "page.settingsWarehouse.fwgone.removeConfirm": "Yes, remove FWG.ONE — retuno then books nothing in FWG.ONE any more.",
  "page.settingsWarehouse.fwgone.removeUnconfirmed": "Tick the box to remove. Nothing changed.",
  "page.settingsWarehouse.fwgone.error.testSkuMissing": "Enter a test SKU — retuno checks the connection with its stock before saving.",
  "page.settingsWarehouse.fwgone.notGreen.keyRefused": "Connection to FWG.ONE failed: the key was rejected. Nothing changed.",
  "page.settingsWarehouse.fwgone.notGreen.skuUnknown": "Connection to FWG.ONE failed: the test SKU does not exist in FWG.ONE. Nothing changed.",
  "page.settingsWarehouse.fwgone.notGreen.transient": "Connection to FWG.ONE failed: no connection or timeout. Nothing changed.",
  "page.settingsWarehouse.fwgone.notGreen.failed": "Connection to FWG.ONE failed. Nothing changed.",
  "page.settingsErp.insecure": "This address uses http://, so the header value travels unencrypted. Use https:// unless the system sits inside your own network.",
  "page.settingsErp.placeholderHeading": "Placeholders",
  "page.settingsErp.placeholderLead": "Both templates below understand these names. In the address they are percent-encoded, in the body they are escaped for JSON — a SKU with a quotation mark in it cannot break the body open.",
  "page.settingsErp.placeholder.sku": "The SKU of the returned article.",
  "page.settingsErp.placeholder.restocked": "How many items of this SKU this one put-away booked as good. It is the quantity of this return, not your stock level — retuno does not know your stock.",
  "page.settingsErp.placeholder.damaged": "How many items of the same line came back damaged.",
  "page.settingsErp.placeholder.return": "The name of the return, for example #1042-R1.",
  "page.settingsErp.placeholder.order": "The name of the order, for example #1042.",
  "page.settingsErp.placeholder.shop": "Your Shopify domain.",
  "page.settingsErp.url": "Address",
  "page.settingsErp.urlHint": "http:// or https://. An address that resolves into a private network is refused — when you save and again before every call.",
  "page.settingsErp.method": "Method",
  "page.settingsErp.methodHint": "PUT replaces the state of one position. POST and PATCH are there for systems that expect them.",
  "page.settingsErp.headerName": "Header name",
  "page.settingsErp.headerNameHint": "The name your system expects, for example X-API-Key.",
  "page.settingsErp.secret": "Header value",
  "page.settingsErp.secretHint": "At least 8 characters. Stored encrypted, never shown again and never printed in a message.",
  "page.settingsErp.secretSet": "A value is stored. Leave empty to keep it.",
  "page.settingsErp.body": "Body",
  "page.settingsErp.bodyHint": "Sent as application/json. Number placeholders stand without quotation marks.",
  "page.settingsErp.probeHeading": "Test call",
  "page.settingsErp.probeLead": "Sends one marked call against the SAVED template to your test SKU, quantity 0, plus the header x-retuno-probe. If your system sets stock absolutely, the test SKU is at 0 there afterwards.",
  "page.settingsErp.probePending": "Checking …",
  "page.settingsErp.probeSubmit": "Send test call",
  "page.settingsErp.probe.ok": "Your system accepted the test call.",
  "page.settingsErp.probe.failed": "The test call did not get through.",
  "page.settingsErp.error.urlMissing": "An address is required.",
  "page.settingsErp.error.urlScheme": "The address must start with http:// or https://.",
  "page.settingsErp.error.urlPrivate": "This address points into a private network. retuno does not call it.",
  "page.settingsErp.error.urlUserinfo": "Put credentials into the header field, not into the address — the header value is stored encrypted, an address is not.",
  "page.settingsErp.error.urlUnresolvable": "This host name does not resolve.",
  "page.settingsErp.error.urlTemplate": "The address uses a placeholder that does not exist.",
  "page.settingsErp.error.bodyTemplate": "The body uses a placeholder that does not exist.",
  "page.settingsErp.error.headerName": "A header name may only contain letters, digits and hyphens.",
  "page.settingsErp.error.headerReserved": "This header name is reserved and cannot be used.",
  "page.settingsErp.error.secretMissing": "A header value is required.",
  "page.settingsErp.error.secretShort": "The header value is too short — at least 8 characters.",
  "page.settingsErp.error.secretInvalid": "The header value contains control characters.",
  "page.settingsWarehouse.fwgone.heading": "FWG.ONE",
  "page.settingsWarehouse.fwgone.lead": "retuno books returned goods into FWG.ONE itself: read the stock, add the returned quantity, set the new stock and read it back to check — and then books nothing in Shopify. Multipacks (e.g. “3 pairs”) are booked as the single item × count. On saving, retuno checks the connection read-only with the test SKU.",
  "page.settingsWarehouse.fwgone.untested": "No successful connection test yet.",
  "page.settingsWarehouse.fwgone.tested": "Last successful connection test: {date}.",
  "page.settingsWarehouse.fwgone.plaintextWarning": "The connection to FWG.ONE is unencrypted (http): the key and stock levels travel in plain text. Switch to https as soon as FWG.ONE supports it — you then only enter the new address.",
  "page.settingsWarehouse.fwgone.url": "FWG.ONE address",
  "page.settingsWarehouse.fwgone.urlHint": "Only the part before “/products”, e.g. https://fwgone.example.com:3055 — retuno adds “/products/<SKU>/quantity” itself.",
  "page.settingsWarehouse.fwgone.plaintext": "Allow unencrypted (http)",
  "page.settingsWarehouse.fwgone.plaintextHint": "Only tick this while FWG.ONE has no https. The key and stock levels then travel in plain text; without the tick retuno refuses an http address.",
  "page.settingsWarehouse.fwgone.key": "Key (X-API-Key)",
  "page.settingsWarehouse.fwgone.keyHint": "Stored encrypted and never shown again.",
  "page.settingsWarehouse.fwgone.keySet": "A key is stored. Leave empty to keep it.",
  "page.settingsWarehouse.fwgone.testSku": "Test SKU",
  "page.settingsWarehouse.fwgone.testSkuHint": "A SKU that exists in FWG.ONE. “Test connection” only reads its stock — nothing is booked.",
  "page.settingsWarehouse.fwgone.allowed": "Only book these SKUs (test mode)",
  "page.settingsWarehouse.fwgone.allowedHint": "One SKU per line. While anything is listed, retuno only books these SKUs; any other stays unbooked and is reported. Leave empty to book all SKUs.",
  "page.settingsWarehouse.fwgone.removed": "FWG.ONE removed. If “Where goods go” is still set to “Into my own warehouse system”, retuno won't put stock away until you change it or set up a connection.",
  "page.settingsWarehouse.fwgone.probeHeading": "Test connection",
  "page.settingsWarehouse.fwgone.probeSubmit": "Test connection",
  "page.settingsWarehouse.fwgone.probePending": "asking FWG.ONE …",
  "page.settingsWarehouse.fwgone.probeHint": "Reads the test SKU's stock from FWG.ONE. Nothing is written.",
  "page.settingsWarehouse.fwgone.probeOk": "Connected: FWG.ONE holds a stock of {quantity} for {sku}.",
  "page.settingsWarehouse.fwgone.probeFailed": "Connection test failed:",
  "page.settingsWarehouse.fwgone.probeTransient": "FWG.ONE did not respond — try again in a moment:",
  "page.settingsWarehouse.fwgone.probeNoTestSku": "Enter a test SKU and save first.",
  "page.settingsWarehouse.fwgone.removeHeading": "Remove FWG.ONE",
  "page.settingsWarehouse.fwgone.removeSubmit": "Remove FWG.ONE",
  "page.settingsWarehouse.template.removeHeading": "Remove template",
  "page.settingsWarehouse.template.removeConfirm": "Yes, remove the template — retuno then no longer calls your warehouse system.",
  "page.settingsWarehouse.template.removeSubmit": "Remove template",
  "page.settingsWarehouse.template.removeUnconfirmed": "Tick the box to remove. Nothing changed.",
  "page.settingsWarehouse.template.removed": "Template removed. If “Where goods go” is still set to “Into my own warehouse system”, retuno won't put stock away until you change it or set up a connection.",
  "page.settingsWarehouse.template.testSku": "Test SKU",
  "page.settingsWarehouse.template.testSkuHint": "‘Send test call’ sends quantity 0 to this SKU. If your system sets stock absolutely, it is at 0 there afterwards — use a SKU that only exists for testing.",
  "page.settingsWarehouse.template.probeNoTestSku": "The test call needs a test SKU. Enter it with the template and save — nothing was sent.",
  "page.settingsWarehouse.template.error.testSku": "The test SKU is too long (255 characters at most) or contains control characters.",
  "page.settingsWarehouse.fwgone.journalHeading": "Latest FWG.ONE bookings",
  "page.settingsWarehouse.fwgone.journalNumbers": "+{quantity}: before {before}, target {target}, read back {readback}",
  "page.settingsWarehouse.fwgone.state.queued": "waiting",
  "page.settingsWarehouse.fwgone.state.writing": "booking",
  "page.settingsWarehouse.fwgone.state.done": "booked",
  "page.settingsWarehouse.fwgone.state.unclear": "unclear — please check in FWG.ONE",
  "page.settingsWarehouse.fwgone.state.drift": "stock differs — please check in FWG.ONE",
  "page.settingsWarehouse.fwgone.state.refused": "not booked",
  "page.settingsWarehouse.fwgone.state.split": "split into parts — each part books on its own",
  "page.settingsWarehouse.sets.heading": "Sets",
  "page.settingsWarehouse.sets.lead": "You sell a set in Shopify as one item, but FWG.ONE keeps the single parts. When a set comes back, retuno books each part into FWG.ONE on its own. A SKU that is not listed here books as before.",
  "page.settingsWarehouse.sets.empty": "No set yet.",
  "page.settingsWarehouse.sets.consistsOf": "consists of {parts}",
  "page.settingsWarehouse.sets.deleteSubmit": "Delete",
  "page.settingsWarehouse.sets.deleteLabel": "Delete set {set}",
  "page.settingsWarehouse.sets.deleted": "Set {set} deleted.",
  "page.settingsWarehouse.sets.formHeading": "Add or change a set",
  "page.settingsWarehouse.sets.setSku": "Set SKU",
  "page.settingsWarehouse.sets.setSkuHint": "As in Shopify, for example 804-01X-000. The same SKU again replaces the entry.",
  "page.settingsWarehouse.sets.parts": "Parts",
  "page.settingsWarehouse.sets.partsHint": "One SKU per line, as in FWG.ONE. If a part is in the set twice: “2 × SKU”.",
  "page.settingsWarehouse.sets.saveSubmit": "Save set",
  "page.settingsWarehouse.sets.saveHint": "retuno first reads each part in FWG.ONE (read only) and saves only if FWG.ONE knows every part.",
  "page.settingsWarehouse.sets.savePending": "asking FWG.ONE …",
  "page.settingsWarehouse.sets.saved": "Set {set} saved. FWG.ONE knows every part.",
  "page.settingsWarehouse.sets.checkKnown": "{sku}: known in FWG.ONE, stock {quantity}",
  "page.settingsWarehouse.sets.error.setSkuMissing": "Please enter the set SKU. Nothing saved.",
  "page.settingsWarehouse.sets.error.setSkuInvalid": "The set SKU cannot be read. Nothing saved.",
  "page.settingsWarehouse.sets.error.partsMissing": "Please enter at least one part. Nothing saved.",
  "page.settingsWarehouse.sets.error.partInvalid": "Line {line} is not a SKU, or the quantity is not between 1 and 99. Nothing saved.",
  "page.settingsWarehouse.sets.error.partsTooMany": "At most 20 parts per set. Nothing saved.",
  "page.settingsWarehouse.sets.error.partIsSet": "Line {line}: the set cannot be its own part. Nothing saved.",
  "page.settingsWarehouse.sets.error.partUnknown": "FWG.ONE does not know every part. Nothing saved.",
  "page.settingsWarehouse.sets.error.full": "At most 100 sets. Nothing saved.",
  "page.settingsWarehouse.sets.error.notConfigured": "FWG.ONE is not set up. Nothing saved.",
  "page.settingsWarehouse.sets.error.notFound": "This set is not listed (any more). Nothing deleted.",
  "page.settingsWarehouse.fwgone.error.urlMissing": "Enter the FWG.ONE address.",
  "page.settingsWarehouse.fwgone.error.urlScheme": "The address must start with https:// (http:// with the tick).",
  "page.settingsWarehouse.fwgone.error.urlPlaintext": "That's an http address. Tick “Allow unencrypted (http)” while FWG.ONE has no https.",
  "page.settingsWarehouse.fwgone.error.urlExtra": "The address must not contain a user name and password, “?” or “#” — the key belongs in its own field.",
  "page.settingsWarehouse.fwgone.error.urlPrivate": "This address points into an internal network. retuno only calls publicly reachable addresses.",
  "page.settingsWarehouse.fwgone.error.urlUnresolvable": "retuno can't resolve this name (DNS).",
  "page.settingsWarehouse.fwgone.error.keyMissing": "Enter the key.",
  "page.settingsWarehouse.fwgone.error.keyShort": "The key is too short — at least 8 characters.",
  "page.settingsWarehouse.fwgone.error.keyInvalid": "The key contains control characters.",
  "page.settingsWarehouse.fwgone.error.testSku": "The test SKU is too long or contains control characters.",
  "page.settingsWarehouse.fwgone.error.allowedList": "The list is too long — at most 50 SKUs, 255 characters each.",
  "page.settingsShortNames.title": "Short names",
  "page.settingsShortNames.hubHint": "How your items are named in retuno: model, colour, size.",
  "page.settingsShortNames.intro": "This is how your items are named everywhere in retuno: model – colour / size (pack). retuno builds the suggestion from the name in Shopify. If it doesn't fit, enter your own short name here.",
  "page.settingsShortNames.keepsSpelling": "What retuno has already recorded (history, cases) keeps its spelling.",
  "page.settingsShortNames.column.shopifyName": "Name in Shopify",
  "page.settingsShortNames.column.options": "Options",
  "page.settingsShortNames.column.example": "Example",
  "page.settingsShortNames.column.suggestion": "Suggestion",
  "page.settingsShortNames.column.shortModel": "Your short name",
  "page.settingsShortNames.column.result": "How it shows",
  "page.settingsShortNames.mode.show": "show",
  "page.settingsShortNames.mode.end": "at the end in brackets",
  "page.settingsShortNames.mode.hide": "leave out",
  "page.settingsShortNames.unclear": "Please check",
  "page.settingsShortNames.reason.noDash": "The Shopify name has no dash, so retuno uses all of it.",
  "page.settingsShortNames.reason.tooLong": "Longer than 20 characters.",
  "page.settingsShortNames.reason.thirdOptionDropped": "The third option ({option}) is left out.",
  "page.settingsShortNames.reason.quantityInVariant": "Quantity in the variant ({value}).",
  "page.settingsShortNames.useSuggestion": "Use suggestion",
  "page.settingsShortNames.saved": "Saved. From now on the item is called “{name}” everywhere.",
  "page.settingsShortNames.reset": "The suggestion applies again: “{name}”.",
  "page.settingsShortNames.unreadable": "Shopify did not return the item list. Reload the page.",
  "page.settingsShortNames.capped.one": "Shopify has more than {count} item. The list shows the first one.",
  "page.settingsShortNames.capped.other": "Shopify has more than {count} items. The list shows the first {max}.",
  "page.settingsShortNames.orphans.heading": "No longer in the shop",
  "page.settingsShortNames.orphans.intro": "Shopify no longer has a product with these names. You can delete the setting.",
  "page.settingsShortNames.orphans.remove": "Delete",
  "page.settingsShortNames.orphans.removed": "Deleted.",
  "page.settingsShortNames.error.tooLong": "The short name can have at most 80 characters.",
  "page.settingsShortNames.error.productGone": "This item no longer exists in Shopify. Reload the page.",
  "page.settingsShortNames.notListed": "Items that are archived or drafts in Shopify are not listed here.",
  "page.settingsShortNames.hide": "Hide",
  "page.settingsShortNames.hidden.heading": "Hidden items",
  "page.settingsShortNames.hidden.intro": "These items are not in the list above. Their short name on returns does not change.",
  "page.settingsShortNames.hidden.show": "Show again",
  "page.settingsShortNames.hidden.done": "“{name}” is hidden.",
  "page.settingsShortNames.hidden.shown": "“{name}” is back in the list.",
  "page.intake.manualLink": "Capture a return without a registration",
  "page.returnDetail.diagnose.reverse": "Reverse fulfillment at Shopify",
  "page.returnDetail.diagnose.reverseNone": "Not queried — no shop or no return.",
  "page.returnDetail.diagnose.reverseUnreadable": "Shopify did not answer:",
  "page.returnDetail.diagnose.reverseEmpty": "Shopify holds no reverse fulfillment order for this return.",
  "page.returnDetail.diagnose.reverseLine": "Reverse line",
  "page.returnDetail.diagnose.reverseType": "Disposition",
  "page.returnDetail.diagnose.reverseLocation": "Location",
  "page.returnDetail.diagnose.reverseUndisposed": "— not disposed yet —",
  "page.returns.sortedAscending": "sorted ascending",
  "page.returns.sortedDescending": "sorted descending",
  "page.returns.type": "Type",
  "page.returns.type.all": "All types",
  "page.returns.type.refund": "Refund",
  "page.returns.type.exchange": "Exchange",
  "page.returns.type.mixed": "Mixed",
  "page.returns.reason": "Return reason",
  "page.returns.reason.all": "All reasons",
  "page.returns.pageNumber": "Page {page}",
  "page.returns.currentPage": "Page {page}, current",
  "rules.value.merchantLabel.yes": "merchant label used",
  "rules.value.merchantLabel.no": "no merchant label used",
  "rules.value.rail.payment": "a refund",
  "rules.value.rail.store_credit": "store credit",
  "rules.value.measuredAt.return_registration": "the day the return was registered",
  "rules.value.measuredAt.evaluation": "the day of the evaluation",
  "rules.value.source.refunds": "the individual refunds",
  "rules.value.source.order_total": "the order balance",
  "rules.value.shippingKept.none": "set to never",
  "rules.value.shippingKept.exchange_only": "exchange only",
  "rules.value.shippingKept.partial_return": "not everything sent back",
  "rules.value.shippingKept.nothing_returned": "nothing came back as “OK” or “Damaged”",
  "rules.value.shippingMode.always": "always",
  "rules.value.shippingMode.full_return_only": "everything sent back",
  "rules.value.exchangeBlock.disabled": "exchanges are switched off",
  "rules.value.exchangeBlock.country": "delivery country not allowed",
  "rules.value.exchangeBlock.order_tag": "an order tag excludes it",
  "rules.value.exchangeBlock.window": "exchange period over",
  "rules.value.exchangeBlock.price_increase": "the new item costs more",
  "rules.value.exchangeBlock.not_same_price": "only the same price is allowed",
  "rules.value.exchangeBlock.sold_out": "not in stock",
  "rules.value.exchangeBlock.same_variant_reason": "the same item only for certain reasons",
  "rules.value.exchangeBlock.pack_size": "a different pack size",
  "rules.summary.lead": "{amount} — {reasons}",
  "rules.summary.plain": "calculated from your rule set",
  "rules.summary.chainRefund": "Refund in order {original} — this order is an exchange from {original}.",
  "rules.summary.chainRefunded": "Refunded in order {original}.",
  "rules.summary.blocked": "order is on your blocklist",
  "rules.summary.expired": "outside the return window",
  "rules.summary.missing.one": "{missing} item missing from the parcel",
  "rules.summary.missing.other": "{missing} items missing from the parcel",
  "rules.summary.rejected.one": "{rejected} item not accepted",
  "rules.summary.rejected.other": "{rejected} items not accepted",
  "rules.summary.hygieneOpened.one": "{opened} hygiene item was opened",
  "rules.summary.hygieneOpened.other": "{opened} hygiene items were opened",
  "rules.summary.damageOpen.one": "{open} item damaged, decision pending",
  "rules.summary.damageOpen.other": "{open} items damaged, decision pending",
  "rules.summary.tiers": "quantity discount recalculated",
  "rules.summary.xForY": "bundle discount recalculated",
  "rules.summary.damaged.one": "{damaged} item arrived damaged",
  "rules.summary.damaged.other": "{damaged} items arrived damaged",
  "rules.summary.defective.one": "{count} item defective",
  "rules.summary.defective.other": "{count} items defective",
  "rules.summary.openedAccepted.one": "{count} opened item accepted without deduction",
  "rules.summary.openedAccepted.other": "{count} opened items accepted without deduction",
  "rules.summary.kept.one": "{kept} of {total} item kept",
  "rules.summary.kept.other": "{kept} of {total} items kept",
  "rules.summary.exchangeOnly": "exchange only, nothing is refunded",
  "rules.summary.keptExchanged.one": "{kept} of {total} item kept, {exchanged} in exchange",
  "rules.summary.keptExchanged.other": "{kept} of {total} items kept, {exchanged} in exchange",
  "rules.summary.exchange": "exchange with a price difference",
  "rules.summary.labelFee": "label fee {amount} deducted",
  "rules.summary.labelWaived": "no label fee, reason “{reason}”",
  "rules.summary.bonus": "with a store credit bonus",
  "rules.summary.rail": "goes back as {rail}",
  "rules.summary.railMixed.one": "goes back on two paths ({count} item as store credit)",
  "rules.summary.railMixed.other": "goes back on two paths ({count} items as store credit)",
  "page.returnDetail.diagnose.identifiers": "Identifiers",
  "page.returnDetail.diagnose.refundId": "Refund",
  "page.returnDetail.diagnose.fulfillmentOrders": "Fulfillment orders",
  "page.intakeManual.nothingReturnable": "Shopify lists nothing returnable on this order. Either everything is already back, or the order was never shipped — both happen. Look for the order the parcel actually came from.",
  "page.intakeManual.exchangePending": "Shopify lists nothing returnable on this order: the exchange item has not been shipped yet. It can only come back once it has been shipped.",
  "page.team.membersHeading.one": "{count} member",
  "page.team.membersHeading.other": "{count} members",
  "page.team.membersEmpty": "No members yet.",
  "page.team.invitationsHeading.one": "{count} open invitation",
  "page.team.invitationsHeading.other": "{count} open invitations",
  "page.team.invitationsEmpty": "No open invitations.",
  "page.team.noAreas": "No area yet",
  "page.team.areasLegend": "May open these areas",
  "page.team.firstName": "First name",
  "page.team.lastName": "Last name",
  "page.team.ownerAllRights": "The owner always has every right, including billing, data requests and this page. That cannot be taken away.",
  "page.team.removeAsk": "Remove this person from the account?",
  "page.team.removeHint": "They lose access immediately, and any open session ends. Their account is deleted; entries in the audit log remain.",
  "page.team.memberSince": "Member since {date}",
  "page.team.lastLogin": "Last sign-in {date}",
  "page.team.invitationUntil": "Valid until {date}",
  "page.team.revoke": "Withdraw invitation",
  "page.team.inviteHeading": "+ Invite a member",
  "page.team.inviteIntro": "They get an email, choose their own password, and can open exactly the areas you tick here.",
  "page.team.inviteSubmit": "Send invitation",
  "page.team.saved": "Saved.",
  "page.team.invited": "Invitation sent.",
  "page.team.revoked": "Invitation withdrawn. The link in that email no longer works.",
  "page.team.removed": "Removed.",
  "page.team.error.emailInvalid": "That is not a valid email address.",
  "page.team.error.emailTaken": "There is already an account for this address.",
  "page.team.error.alreadyInvited": "This address already has an open invitation. Withdraw it first if you want to change the areas.",
  "page.team.error.noAreas": "Tick at least one area — an account that may open nothing helps nobody.",
  "page.team.error.nameMissing": "First and last name are both required.",
  "page.team.error.noShop": "Connect your shop first: the invitation goes out under its name.",
  "page.team.error.unknownMember": "This member no longer exists.",
  "page.team.error.unknownInvitation": "This invitation no longer exists.",
  "page.api.keysHeading.one": "{count} key",
  "page.api.keysHeading.other": "{count} keys",
  "page.api.keysEmpty": "No key yet.",
  "page.api.summaryReadWrite": "Reads returns, approves and declines",
  "page.api.summaryWithRefunds": "Reads returns, approves and declines — and may release refunds",
  "page.api.revokedOn": "Withdrawn on {date}",
  "page.api.revokedHint": "This key no longer works. A withdrawn key cannot be brought back; create a new one instead.",
  "page.api.refundLegend": "Releasing refunds",
  "page.api.refundLabel": "This key may release calculated refunds",
  "page.api.refundHint": "Off by default. Without this tick the key still reads everything and can approve or decline a return — it just cannot move money. The amount always comes from the stored evaluation, never from the call.",
  "page.api.customerWishLegend": "Change the customer's wish",
  "page.api.customerWishLabel": "This key may change what the customer asked for",
  "page.api.customerWishHint": "Off by default. With this ticked, the key can switch a refund between the payment method and store credit while the evaluation is still open, and change the size or colour of an exchange. It moves no money itself — but it decides where the next release pays out.",
  "page.api.undeliverableLegend": "Process undeliverable shipments",
  "page.api.undeliverableLabel": "This key may change the state of undeliverable shipments",
  "page.api.undeliverableHint": "Off by default. With it, the key takes the same steps as the page of an undeliverable shipment — including the email to the customer and restocking.",
  "page.api.revoke": "Withdraw key",
  "page.api.revokeAsk": "Withdraw this key?",
  "page.api.revokeConfirm": "Yes, withdraw",
  "page.api.revokeHint": "Every system using this key stops working immediately. The key cannot be restored — you would create a new one and hand it out again.",
  "page.api.createdOn": "Created on {date}",
  "page.api.lastUsed": "Last used {date}",
  "page.api.createHeading": "+ Create a key",
  "page.api.name": "Name",
  "page.api.nameHint": "For you, so you can tell your keys apart later — for example the system that will use it.",
  "page.api.createSubmit": "Create key",
  "page.api.created": "Key created.",
  "page.api.revoked": "Key withdrawn.",
  "page.api.refundAccessChanged": "Saved.",
  "page.api.refundAccessUnchanged": "Nothing to change — the key is already set that way.",
  "page.api.freshHeading": "Your new key — copy it now",
  "page.api.freshHint": "We only store its fingerprint, so this is the one and only time it is shown. Lose it and you create a new one and withdraw this.",
  "page.api.noShop": "Connect your shop first: a key is bound to one shop, and that is what decides which returns it may see.",
  "page.api.error.noShop": "Connect your shop first: a key is bound to one shop.",
  "page.api.error.nameInvalid": "Give the key a name, up to 60 characters.",
  "page.api.error.unknownKey": "This key no longer exists.",
  "api.error.unauthorized": "No valid API key. Send it as an Authorization: Bearer header — never in the URL.",
  "api.error.forbidden": "This key is not allowed to do that. Releasing refunds has to be ticked for the key in your retuno settings.",
  "api.error.notFound": "There is no such return in this shop.",
  "api.error.unknownEndpoint": "There is no such endpoint under /api/v1. Check the path and the version — the full list is in the OpenAPI document.",
  "api.error.invalidRequest": "The request could not be read. See the field in this error for the parameter at fault.",
  "api.error.ambiguousRma": "This RMA matches more than one return in this shop. Use the return id instead.",
  "api.error.conflict": "The return is not in a state where this call can be applied.",
  "api.error.idempotencyMismatch": "This Idempotency-Key was already used for a different request. Use a new key, or repeat the original request unchanged to get its stored answer.",
  "api.error.idempotencyInFlight": "An earlier call with this Idempotency-Key is still running — or it broke off with an unknown outcome. Check the current state first — for a return with GET /api/v1/returns/{id} — before you try again, and only use a new key once it is clear the first call did not take effect.",
  "api.error.outcomeUnknown": "Something went wrong on our side while the call was being carried out. Whether it already took effect — for a refund: whether money moved — is unknown. Check the current state first — for a return with GET /api/v1/returns/{id} — before you try again.",
  "api.error.customerWishDenied": "This key is not allowed to change what the customer asked for. \"Change the customer's wish\" has to be ticked for the key under Administration → API access — a separate tick next to releasing refunds.",
  "api.error.exchangeLineUnknown": "This return has no exchange line with this id. The ids are in lines[].id of GET /api/v1/returns/{id} (lines with kind \"exchange\").",
  "api.error.exchangeNotChangeable": "This exchange line cannot be changed right now: the return is not approved (OPEN), the goods are already put away or the exchange already switched, opened pairs are decided on the return page, the line covers several items, or closing is in progress. Read the return again (GET /api/v1/returns/{id}).",
  "api.error.variantNotOffered": "This variant does not belong to the registered model. Through the API only another size or colour of the same item is possible.",
  "api.error.variantUnchanged": "This is already the registered variant — there is nothing to change.",
  "api.error.variantReturned": "This is the variant being sent back. The exchange has to be a different one.",
  "api.error.variantUnavailable": "This variant cannot be chosen right now — it is out of stock or not sold this way.",
  "api.error.variantPriceDiffers": "This only works at the same price as the registered variant. retuno does not switch to a variant with a different price through the API.",
  "api.error.settlementNotChangeable": "The rail of this return cannot be changed right now: the return is closed or declined, the goods are already put away, or closing is in progress. Read the return again (GET /api/v1/returns/{id}).",
  "api.error.settlementLineUnknown": "This return has no line with this id. The ids are in lines[].id of GET /api/v1/returns/{id}.",
  "api.error.settlementLineExchange": "This line is an exchange. Through the API you only switch lines that are already a refund or store credit — turning an exchange into money stays at retuno's intake desk.",
  "api.error.settlementNotPortal": "This return did not come through the customer portal. Without the customer's wish from the portal there is nothing to switch.",
  "api.error.settlementSettled": "The evaluation of this return is no longer open — it is released, executed or closed. The rail is only switched while it is open (evaluation.status pending).",
  "api.error.settlementNoRefundTag": "This item is blocked from a refund to the payment method (\"no refund\" tag). Store credit is possible.",
  "api.error.settlementStoreCreditUnavailable": "Store credit is not possible for this order: it has no customer account, or store credit is not available in this shop.",
  "api.error.settlementShopifyUnavailable": "Shopify did not answer just now, so we could not check the order. Nothing was changed — try again in a few minutes.",
  "api.error.areaDenied": "This key is not allowed to work with the \"{area}\" area. A key can only do what was ticked for it when it was created, and never more than the member who created it — the area has to be ticked on the key (otherwise create a new key) and for this member under Administration → Team. (Releasing refunds is a separate tick on the key itself.)",
  "api.error.unknownSku": "No item in Shopify carries this value — neither as SKU nor as barcode. Nothing was reported; check the SKU.",
  "api.error.ambiguousSku": "More than one item in Shopify carries this value. Nothing was reported — send the SKU that matches exactly one item.",
  "api.error.photoMissing": "A defect is not reported without a photo. Send it as the file part “photo” — none arrived, or it was empty.",
  "api.error.photoTooLarge": "The photo is larger than this shop's photo limit. Nothing was reported; send a smaller photo.",
  "api.error.photoUnsupported": "This file is not an image we accept. JPEG, PNG, WebP and HEIC are allowed — the content is checked, not the declared type.",
  "api.error.shopifyUnavailable": "Shopify did not answer just now, so we could not look up the SKU. Nothing was reported — try again in a few minutes.",
  "api.error.labelMissing": "retuno has no label for this return — it has not been created yet, its creation failed, or the shop uses its own label. label.status in GET /api/v1/returns/{id} shows where it stands.",
  "api.error.qrMissing": "This return's label has no QR code — not every carrier provides one. The label itself is at GET /api/v1/returns/{id}/label.",
  "api.error.labelExpired": "The file existed, but its retention period has ended — it has been deleted and can no longer be retrieved.",
  "api.error.cancelNotPossible": "This return cannot be canceled: it is neither requested nor approved, but already closed, declined or canceled. GET /api/v1/returns/{id} shows where it stands.",
  "api.error.cancelStockBooked": "Goods of this return are already booked into stock — it is not canceled any more. Nothing was changed.",
  "api.error.cancelNotAccepted": "This return was put away with an item that was not accepted — canceling would release it at Shopify again. Nothing was changed.",
  "api.error.cancelRefusedByShopify": "Shopify refused the cancellation, for example because money was already refunded. Nothing was changed; GET /api/v1/returns/{id} shows where it stands.",
  "api.error.cancelInProgress": "A cancellation of this return is already running. Read it again in a few seconds (GET /api/v1/returns/{id}) instead of sending again.",
  "api.error.undeliverableAccessDenied": "This key may read undeliverable shipments but not change their state. \"Process undeliverable shipments\" has to be ticked for the key under Administration → API access.",
  "api.error.undeliverableTransitionUnavailable": "retuno does not offer this transition for this undeliverable shipment right now — for example because it has moved on already, or because it is a duplicate that has to be checked first. Nothing was changed; GET /api/v1/undeliverable-shipments/{id} shows where it stands and which transitions are offered.",
  "api.error.orderUnknown": "Shopify does not know this order in this shop — check the value and the type in order_reference. Nothing was registered.",
  "api.error.orderAmbiguous": "This order name matches more than one order. Send the Shopify order ID instead (order_reference.type external_shop_order_id). Nothing was registered.",
  "api.error.orderBlocked": "The shop does not accept returns for this order (block list in the return rules). Nothing was registered.",
  "api.error.itemNotReturnable": "The order has no line for this identifier that can still be returned — it is not in the order, not shipped yet, already fully registered, or excluded from returns by the shop. Nothing was registered.",
  "api.error.quantityTooHigh": "The quantity is higher than what can still be returned for this line (at most {max}). Nothing was registered.",
  "api.error.reasonUnknown": "This return reason does not exist in the shop's customer portal, or it is switched off. Allowed are: {allowed}. Nothing was registered.",
  "api.error.outcomeNotAllowed": "This outcome is not possible for this item or this order — the shop excluded it, or store credit needs a customer account. Nothing was registered.",
  "api.error.commentRequired": "For this return reason the shop requires a comment (notes). Nothing was registered.",
  "api.error.photoRequired": "For this return reason the shop requires a photo — send it in photos. Nothing was registered.",
  "api.error.defectExpired": "For a defect, the period for this outcome has ended. Nothing was registered.",
  "api.error.exchangeVariantInvalid": "For an exchange the target variant is missing, or it cannot be chosen for this item: it is neither a variant of the ordered product nor a model at the same price from the shop's exchange collection (exchange_variant_id). Nothing was registered.",
  "api.error.exchangeNotAllowed": "The shop's exchange rules do not allow this exchange (country, period, price or variant). Nothing was registered.",
  "api.error.exchangeUnavailable": "The requested variant is not available right now. Nothing was registered.",
  "api.error.exchangeSizeContradictsReason": "The chosen size does not fit the reason — for example “too small” with a smaller size chosen. Nothing was registered.",
  "api.error.conditionsRequired": "This item is a hygiene item: the customer must have accepted the return conditions (conditions_accepted: true). Nothing was registered.",
  "api.error.returnMethodRequired": "Choose a return method (return_method). Possible for this return: {allowed}. Nothing was registered.",
  "api.error.returnMethodUnavailable": "This return method is not offered for this return. Possible: {allowed}. Nothing was registered.",
  "api.error.rejectedByShopify": "Shopify refused the registration — usually the line can no longer be returned or the quantity is too high. Nothing was registered; check the order and try again with the current quantities.",
  "api.error.reasonUnmapped": "This return reason is not mapped to a Shopify reason in the shop — the shop has to fix that in its settings. Nothing was registered.",
  "api.error.shopNotConnected": "The shop is not connected to Shopify right now. Nothing was registered — try again later.",
  "api.error.returnPhotoTooLarge": "A photo is larger than this shop's photo limit ({megabytes} MB). Nothing was registered; send a smaller photo.",
  "api.error.returnPhotoUnreadable": "A photo cannot be read: the image is expected as Base64 (a data URL works too), not empty. Nothing was registered.",
  "api.error.methodNotAllowed": "That path does not offer this HTTP method. The Allow header lists the ones it does.",
  "api.error.rateLimited": "Too many requests. See the Retry-After header for how long to wait.",
  "api.error.quotaExceeded": "The agent fair-use allowance is used up. Retry-After and the Agent-Quota-* headers on this response say when it continues; retrying before that does not help.",
  "api.error.serviceUnavailable": "The agent cannot reach its language model right now. Your question was fine — try again in a few minutes.",
  "api.error.internal": "Something went wrong on our side. The request was not applied.",
  "page.invite.title": "Join the team",
  "page.invite.heading": "Join the team",
  "page.invite.intro": "{account} invited you. Pick a password and you are in.",
  "page.invite.goneIntro": "This invitation cannot be used.",
  "page.invite.forEmail": "This invitation is for",
  "page.invite.areasHeading": "You will be able to open",
  "page.invite.submit": "Accept invitation",
  "page.invite.error.gone": "This invitation is no longer valid — it may have expired or been withdrawn. Ask the account owner for a new one.",
  "page.invite.error.nameMissing": "First and last name are both required.",
  "page.invite.error.emailTaken": "There is already an account for this address. Sign in instead.",
  "mail.teamInvitation.subject": "{account} invites you to the returns dashboard",
  "mail.teamInvitation.greeting": "Hi {name},",
  "mail.teamInvitation.intro": "{account} has invited you to work on returns for {shop}.",
  "mail.teamInvitation.areasHeading": "You will be able to open",
  "mail.teamInvitation.action": "Accept the invitation and pick your password here: {url}",
  "mail.teamInvitation.button": "Accept invitation",
  "mail.teamInvitation.expiry": "The link works until {date}. After that, ask for a new invitation.",
  "mail.teamInvitation.unexpected": "If you were not expecting this, you can ignore this email — nothing happens without your password.",
  "mail.teamInvitation.closing": "See you soon,\n{shop}",
  "page.admin.title": "Administration",
  "page.admin.heading": "Administration",
  "page.admin.back": "Back to administration",
  "page.team.error.ownerOnly": "Only the account owner can do that.",
  "page.team.areaOwnerOnly": "Only the account owner grants and removes this one.",
  "page.team.selfLocked": "You cannot change your own access. Ask the account owner.",
  "page.team.ownerLocked": "The account owner's entry can only be changed by the owner.",
  "page.api.error.ownerOnly": "Only the account owner can release refunds for a key.",
  "page.api.refundOwnerOnly": "Only the account owner sets this one.",
  "page.api.areasLegend": "Areas of this key",
  "page.api.areasHint": "A key can only do what is ticked here — and never more than you can yourself. For a program that only reports defects, tick only “Defects”: it then reads no return and no customer.",
  "page.api.areas": "Areas: {areas}",
  "page.api.error.noAreas": "Tick at least one area — a key without an area can do nothing.",
  "page.settingsExchange.title": "Exchanges",
  "page.settingsExchange.hubHint": "When an exchange is possible, which variants a customer may pick, and what happens to a price difference.",
  "page.settingsExchange.stateOpen": "Exchanges are unrestricted: every country, no separate deadline, no price limit \u2014 customers can pick whatever is in stock.",
  "page.settingsExchange.stateRestricted": "Exchange rules are in effect. Whatever they rule out no longer appears as an option in the portal.",
  "page.settingsExchange.offerHeading": "When an exchange is possible",
  "page.settingsExchange.enabled": "Offer exchanges in the portal",
  "page.settingsExchange.enabledHint": "Switched off, refunds and store credit stay; only the exchange disappears from the choices.",
  "page.settingsExchange.countries": "Allowed shipping countries",
  "page.settingsExchange.countriesHint": "One country code per line, e.g. DE. Empty means every country. Orders without a shipping address are not affected by this list.",
  "page.settingsExchange.windowDays": "Exchange right in days",
  "page.settingsExchange.windowDaysHint.one": "Empty means the general return window ({days} day) also applies to exchanges. A number is a separate exchange right and may be longer — counted like the return window. Refunds keep the return window.",
  "page.settingsExchange.windowDaysHint.other": "Empty means the general return window ({days} days) also applies to exchanges. A number is a separate exchange right and may be longer — counted like the return window. Refunds keep the return window.",
  "page.settingsExchange.excludedOrderTags": "Exclude orders (order tag)",
  "page.settingsExchange.excludedOrderTagsHint": "One tag per line. These orders can do everything except exchange. Case does not matter.",
  "page.settingsExchange.stockHeading": "Availability",
  "page.settingsExchange.stockCheck": "Check availability before promising an exchange",
  "page.settingsExchange.stockCheckHint": "Switched off, the portal promises every exchange, even at zero stock. Only the warehouse then knows whether it can ship — the return says so. Who we ask when the check is on is set under Settings → Warehouse.",
  "page.settingsExchange.deskStockCheck": "Offer only available variants at the intake desk (off: every variant of the model)",
  "page.settingsExchange.deskStockCheckHint": "Applies only to the changed exchange wish at the intake desk, not to the portal. Switched off, variants that are not available can be chosen there too; whether they can be shipped is checked by you afterwards. Variants with a different price stay blocked in any case.",
  "page.settingsExchange.sameVariantHeading": "Replacement delivery",
  "page.settingsExchange.sameVariantRestricted": "The same variant only for certain reasons",
  "page.settingsExchange.sameVariantRestrictedHint": "Switched off, a customer can pick the same variant again for any reason — that is the default. Switched on, it stays available only for the reasons you tick below; for every other reason the portal says they can choose a refund or another variant instead. An exchange into a DIFFERENT variant, a different size say, remains possible either way.",
  "page.settingsExchange.sameVariantUnknownReasons": "The ticked reasons are not (or no longer) in your catalogue — the replacement delivery is therefore blocked for every reason. Tick a reason below that your customers can actually choose.",
  "page.settingsExchange.sameVariantNoneChosen": "No reason is ticked — the replacement delivery is therefore possible for no reason at all. That is a valid setting; if you did not mean it, tick the reasons below it should apply to.",
  "page.settingsExchange.sameVariantReasonsHint": "For these reasons the replacement delivery stays available. Nothing ticked means: for none.",
  "page.settingsExchange.sameVariantNoReasons": "This shop has no return reasons yet — add them under Settings → Return reasons and they will appear here.",
  "page.settingsExchange.packSizeHeading": "Pack size",
  "page.settingsExchange.packSizeLocked": "Exchange only into the same pack size",
  "page.settingsExchange.packSizeLockedHint": "When on, a customer who ordered “1 pair” can only exchange into “1 pair” again — another size or colour, never “2 pairs”. When off, customers may change the pack size, also to a more expensive one; then “The wanted variant costs more” further down applies — with “Request additional payment” the new item is only shipped after payment. Below, name the option that carries the pack size in your shop.",
  "page.settingsExchange.packSizeOptionNames": "Option name in Shopify",
  "page.settingsExchange.packSizeOptionNamesHint": "One per line, spelled as on the product, e.g. “Quantity”. Upper and lower case do not matter. Applies even without the lock: retuno reads the number of pairs of a hygiene bundle (“3 pairs”) from it, so the intake desk can deduct opened pairs at the single price.",
  "page.settingsExchange.packSizeEmpty": "The lock is on, but no option is named — so it locks nothing. Enter below what the option is called in Shopify.",
  "page.settingsExchange.priceHeading": "Price difference",
  "page.settingsExchange.samePriceOnly": "Allow same-price variants only",
  "page.settingsExchange.samePriceOnlyHint": "This way a difference never arises. More expensive and cheaper variants are not offered to the customer.",
  "page.settingsExchange.priceIncrease": "The wanted variant costs more",
  "page.settingsExchange.priceIncreaseHint": "With \"Request additional payment\", Shopify holds the shipment until the customer has paid. retuno sends the invoice, releases the shipment itself once the payment has arrived in full, and shows the state on the return.",
  "page.settingsExchange.priceIncrease.request": "Request additional payment",
  "page.settingsExchange.priceIncrease.block": "Do not allow",
  "page.settingsExchange.priceDrop": "The wanted variant costs less",
  "page.settingsExchange.priceDropHint": "\"Shop keeps the amount\" is how it has worked so far. The other two pay the difference out to the customer; the amount then appears on the return for checking.",
  "page.settingsExchange.priceDrop.keep": "Shop keeps the amount",
  "page.settingsExchange.priceDrop.storeCredit": "Pay out as store credit",
  "page.settingsExchange.priceDrop.refund": "Refund to the payment method",
  "page.settingsExchange.otherModelsHeading": "Exchange into other models",
  "page.settingsExchange.otherModelsCollection": "Collection",
  "page.settingsExchange.otherModelsOff": "Off — only variants of the same product",
  "page.settingsExchange.otherModelsHint": "If the returned item is in this collection, the customer portal, “Capture a return” and the changed exchange wish at the intake desk also offer every other product in the collection for exchange that leaves the invoice unchanged.",
  "page.settingsExchange.otherModelsMissing": "The selected collection no longer exists in Shopify — exchange into other models is off until you choose another one.",
  "page.settingsExchange.otherModelsUnreadable": "Shopify did not return the collections just now — the list only shows the saved one.",
  "page.settingsPolicy.shippingHeading": "Original shipping cost",
  "page.settingsPolicy.shippingRefundMode": "Refund the original shipping cost",
  "page.settingsPolicy.shippingRefundModeHint": "What the customer originally paid for delivery. \"Only on a full return\" means: only when nothing from the order stays with the customer. An exchange does not count as a return here.",
  "page.settingsPolicy.shippingRefundMode.none": "Do not refund",
  "page.settingsPolicy.shippingRefundMode.fullReturnOnly": "Only on a full return",
  "page.settingsPolicy.shippingRefundMode.always": "Always refund",
  "agent.metric.returns.count.title": "Returns in total",
  "agent.metric.returns.count.example": "How many returns did I have in July?",
  "agent.metric.returns.trend.title": "Returns over time",
  "agent.metric.returns.trend.example": "How is the returns trend?",
  "agent.metric.returns.by_status.title": "Returns by status",
  "agent.metric.returns.by_status.example": "How do returns split by status?",
  "agent.metric.returns.by_reason.title": "Returns by reason",
  "agent.metric.returns.by_reason.example": "Which return reasons come up most often?",
  "agent.metric.returns.by_product.title": "Returns by article",
  "agent.metric.returns.by_product.example": "Which article comes back most often?",
  "agent.metric.returns.by_model.title": "Returns by model",
  "agent.metric.returns.by_model.example": "Which model has the most defects?",
  "agent.metric.returns.declined.title": "Declined returns",
  "agent.metric.returns.declined.example": "How many return requests did I decline?",
  "agent.metric.returns.exchange_share.title": "Exchange versus refund",
  "agent.metric.returns.exchange_share.example": "What is the exchange share of my returns?",
  "agent.metric.refunds.total.title": "Refunds paid out",
  "agent.metric.refunds.total.example": "How much did I refund last month?",
  "agent.metric.refunds.average.title": "Average refund",
  "agent.metric.refunds.average.example": "What does a single return cost me on average?",
  "agent.metric.fees.label_total.title": "Label fees kept back",
  "agent.metric.fees.label_total.example": "How much label fee did I keep back?",
  "agent.metric.processing.duration.title": "Processing time",
  "agent.metric.processing.duration.example": "How long does a return take?",
  "agent.metric.intake.condition.title": "Condition on arrival",
  "agent.metric.intake.condition.example": "How often do damaged goods come back?",
  "agent.metric.clarifications.open.title": "Open reviews",
  "agent.metric.clarifications.open.example": "How many returns need a review?",
  "agent.answer.count.one": "{count} return",
  "agent.answer.count.other": "{count} returns",
  "agent.answer.items.one": "{count} item",
  "agent.answer.items.other": "{count} items",
  "agent.answer.durationMedian.one": "Median {median} day",
  "agent.answer.durationMedian.other": "Median {median} days",
  "agent.answer.durationP90.one": "90% within {p90} day",
  "agent.answer.durationP90.other": "90% within {p90} days",
  "agent.answer.empty": "There is nothing in this period.",
  "agent.column.period": "Period",
  "agent.column.status": "Status",
  "agent.column.reason": "Reason",
  "agent.column.product": "Article",
  "agent.column.model": "Model",
  "agent.column.size": "Size",
  "agent.column.photos": "Customer photos",
  "agent.column.type": "Type",
  "agent.column.currency": "Currency",
  "agent.column.measure": "Measure",
  "agent.column.condition": "Condition",
  "agent.column.count": "Count",
  "agent.column.share": "Share",
  "agent.column.amount": "Amount",
  "agent.measure.median": "Median",
  "agent.measure.p90": "90% of returns within",
  "agent.value.unknown": "Not stated",
  "agent.note.currentState": "Based on: {metric} · as of now — the period does not apply to this number; it counts what is waiting right now. The same number as the “{tile}” tile.",
  "agent.note.metricAndPeriod": "Calculated with: {metric} · {from} – {to}",
  "agent.note.countsItems": "Counted in items, not in returns: a return with three of the same article counts as three.",
  "agent.note.modelPhotos": "Customer photos: counted as under Administration → Customer photos, for the same period and reason.",
  "agent.note.modelSizes": "The size is the part of the variant name after the last “/”. Without a slash it shows as “—” rather than a guess.",
  "agent.model.photosLink": "View photos",
  "agent.model.sizesLabel": "Sizes of {model}",
  "agent.note.executedOnly": "Only what was actually paid out is counted — decided but unexecuted refunds are not in here.",
  "agent.note.executedPeriod": "The period is the payout date, not the day the return was filed.",
  "agent.note.arrivedPeriod": "The period is the day the parcel arrived at the warehouse.",
  "agent.note.closedOnly.one": "Calculated over {count} closed return — open returns are not in here and would make it slower.",
  "agent.note.closedOnly.other": "Calculated over {count} closed returns — open returns are not in here and would make it slower.",
  "agent.note.omitted.one": "{count} further row is not shown; the share is calculated against all of them.",
  "agent.note.omitted.other": "{count} further rows are not shown; the share is calculated against all of them.",
  "agent.note.productFilter": "Article understood as: {values}",
  "agent.note.reasonFilter": "Reason understood as: {values}",
  "agent.note.statusFilter": "Limited to status: {value}",
  "agent.note.multipleCurrencies": "Several currencies — listed separately, nothing is converted.",
  "agent.metric.rate.returns.title": "Return rate",
  "agent.metric.rate.returns.example": "What is my return rate?",
  "agent.metric.rate.by_product.title": "Return rate by article",
  "agent.metric.rate.by_product.example": "Which article has the worst return rate?",
  "agent.metric.rate.trend.title": "Return rate over time",
  "agent.metric.rate.trend.example": "How is the return rate trend?",
  "agent.column.sold": "Sold",
  "agent.column.returned": "Returned",
  "agent.column.rate": "Return rate",
  "agent.answer.rate": "{rate} — {returned} of {sold} items sold",
  "agent.answer.salesNotCounted": "Sales are not counted for this period, so there is no rate.",
  "agent.answer.salesNone": "Nothing was sold in this period — without sales there is no rate.",
  "agent.note.rateBasis": "Units returned in the period, divided by units sold in the period. The returns do not necessarily come from those sales — over a steady month that is the usual calculation, in the month after a sale it is not.",
  "agent.note.salesNotCounted": "Sales are counted from the day your shop was connected, and Shopify only hands out the last 60 days of orders. Ask about a more recent period.",
  "agent.note.salesWindow": "Narrowed to the days sales are counted for: {from} – {to}. Both sides of the rate use the same window.",
  "agent.note.salesOnceCounted": "Sales are counted once, in the night after the day they happened. A later cancellation does not change that count.",
  "agent.note.rateThreshold.one": "{count} article is not in the list: fewer than {minimum} units sold in the period, which is too few for a rate.",
  "agent.note.rateThreshold.other": "{count} articles are not in the list: fewer than {minimum} units sold in the period, which is too few for a rate.",
  "agent.note.omittedRate.one": "{count} further article is not shown; its rate is lower.",
  "agent.note.omittedRate.other": "{count} further articles are not shown; their rate is lower.",
  "nav.agent": "Agent",
  "page.agent.title": "Agent",
  "page.agent.noShop": "No shop is connected yet, so there is nothing to count. Connect your shop under Administration.",
  "page.agent.invalidPeriod": "That period cannot be worked out. Please pick one from the list.",
  "page.agent.unresolved": "I cannot find „{query}“ in your returns of this period, so there is no number for it.",
  "page.agent.unresolvedSuggestions": "What comes back most in this period:",
  "page.agent.catalogIntro": "These are the questions I can answer:",
  "agent.note.comparison": "Period before ({from} – {to}): {value}",
  "agent.note.comparisonChange": "Period before ({from} – {to}): {value} — change {change}",
  "agent.note.productFilterApproximate": "Article understood approximately as: {values} — no name matched your words exactly.",
  "agent.note.reasonFilterApproximate": "Reason understood approximately as: {values} — no reason matched your words exactly.",
  "nav.intake.short": "Warehouse",
  "page.defects.title": "Defects",
  "page.defects.code.label": "SKU or barcode",
  "page.defects.code.submit": "Continue",
  "page.defects.code.hint": "Scan the SKU or barcode of the defective item, then attach a photo of the defect. The report lands in Customer photos under Administration.",
  "page.defects.found.sku": "SKU {sku}",
  "page.defects.found.barcode": "Barcode {barcode}",
  "page.defects.photo.hint": "A photo of the defect — a defect can't be reported without a photo.",
  "page.defects.submit": "Report defect",
  "page.defects.anotherSku": "Different SKU",
  "page.defects.reported": "Reported: 1× {item}. Now scan the next SKU.",
  "page.defects.error.unknown": "We can't find an item for “{code}” in Shopify — neither as SKU nor as barcode. Please check the SKU.",
  "page.defects.error.ambiguous": "More than one item in Shopify matches “{code}”. We won't report anything until it's clear which one is meant — please type the SKU from the label.",
  "page.defects.error.tooLong": "That's too long for an SKU or a barcode.",
  "page.defects.error.empty": "Please scan an SKU or a barcode first.",
  "page.defects.error.noPhoto": "A defect can't be reported without a photo.",
  "page.defects.error.shopify": "Shopify isn't answering right now — we couldn't look up the item. Please scan again in a moment.",
  "page.defects.error.noShop": "No shop is connected yet. Without a shop there are no items to report a defect for.",
  "page.defects.error.rateLimited": "That was a lot of reports in a short time. Please continue in {minutes} minutes.",
  "page.defects.error.deleteUnknown": "This report no longer exists.",
  "page.defects.error.notOwn": "Someone else made this report. Only the owner and administration delete other people's reports — in Customer photos.",
  "page.defects.own.heading": "Your latest reports",
  "page.defects.own.empty": "No reports yet.",
  "page.defects.own.delete": "Delete",
  "page.defects.own.deleteNamed": "Delete report {item}",
  "page.defects.own.deleted": "Report deleted — photo included.",
  "nav.admin.short": "Admin",
  "page.agent.questionLabel": "Your question",
  "page.agent.questionPlaceholder": "e.g. return rate last month",
  "page.agent.send": "Ask",
  "page.agent.enterHint": "Press Enter to send, Shift+Enter for a new line.",
  "page.agent.clear": "Clear history",
  "page.agent.historyLabel": "Conversation with the agent",
  "page.agent.empty": "Nothing asked yet. Type a question below — for example: how many returns did I have last month?",
  "page.agent.refusal": "I cannot answer that yet.",
  "page.agent.quotaRemaining.one": "{count} of {limit} questions left this month.",
  "page.agent.quotaRemaining.other": "{count} of {limit} questions left this month.",
  "page.agent.quotaMonthReached": "Your question allowance for this month is used up.",
  "page.agent.quotaMonthUntil.one": "The {limit} question for the month has been asked. It continues on {when} — your allowance grows with every billed return.",
  "page.agent.quotaMonthUntil.other": "All {limit} questions for the month have been asked. It continues on {when} — your allowance grows with every billed return.",
  "page.agent.modelDown": "I cannot think right now.",
  "page.agent.modelDownExplain": "Your question was fine — I just cannot reach the language model that makes sense of it. Try again in a few minutes. Questions I understand myself are still answered right away.",
  "page.agent.quotaHourReached": "That was a lot of questions at once.",
  "page.agent.quotaHourExplain.one": "The agent takes at most {limit} question per hour. It continues in the next hour; your monthly allowance is untouched.",
  "page.agent.quotaHourExplain.other": "The agent takes at most {limit} questions per hour. It continues in the next hour; your monthly allowance is untouched.",
  "page.returnDetail.mail.heading": "Notifications",
  "page.returnDetail.approvePending": "Releasing …",
  "page.photos.title": "Customer photos",
  "page.photos.hubHint": "Photos customers uploaded and the defects the warehouse or a connected program reports — by month, model and reason, with a ZIP export sorted into one folder per model. Photos judged “Not a defect” stay on the return only.",
  "page.photos.retention": "Customer photos and reported defects are deleted after 180 days. The export does not reach back further either.",
  "page.photos.filter.month": "Month",
  "page.photos.filter.allMonths": "All months",
  "page.photos.filter.model": "Model",
  "page.photos.filter.allModels": "All models",
  "page.photos.filter.noModel": "Model unknown",
  "page.photos.model.byTitle": "grouped by title",
  "page.photos.filter.reason": "Reason",
  "page.photos.filter.review": "Review",
  "page.photos.filter.carrier": "Carrier",
  "page.photos.filter.allCarriers": "All carriers",
  "page.photos.filter.origin": "Origin",
  "page.photos.filter.allOrigins": "All origin countries",
  "page.photos.filter.outboundUnknown": "Unknown",
  "page.photos.filter.from": "Reported from",
  "page.photos.filter.to": "Reported until",
  "page.photos.wrongItem.count": "Shipments with a confirmed wrong item: {count}",
  "page.photos.wrongItem.chinaSettings": "Settings → Warehouse",
  "page.photos.wrongItem.chinaUnset": "Which shipments count as shipped from China is not set yet.",
  "page.photos.wrongItem.china": "Of these, shipped from China (per your warehouse settings): {count}",
  "page.photos.filter.originLocation": "Location: {name}",
  "page.photos.wrongItem.scope": "Each shipment of your order counts once if at least one item in it is confirmed as a wrong item — with or without a photo. Only “Reported from/until” applies to these numbers; month, model, reason, review, carrier, origin and search select photos, not shipments.",
  "page.photos.filter.allReviews": "All reviews",
  "page.photos.tile.reported": "Reported {date}",
  "page.photos.tile.uploaded": "Uploaded {date}",
  "page.photos.tile.fromDesk": "Reported by the warehouse · {name}",
  "page.photos.tile.fromApi": "Reported via API · {name}",
  "page.photos.tile.deleteDefect": "Delete report for {model}",
  "page.photos.review.reported": "Reported (warehouse/API)",
  "page.photos.filter.allReasons": "All reasons",
  "page.photos.filter.search": "Search",
  "page.photos.filter.searchPlaceholder": "Name, SKU, barcode",
  "page.photos.filter.submit": "Filter",
  "page.photos.filter.clear": "Clear filters",
  "page.photos.empty": "No customer photos yet.",
  "page.photos.emptyFiltered": "No photo matches this selection.",
  "page.photos.emptyNoShop": "No shop connected yet — there is nothing to show.",
  "page.photos.noModel": "Model unknown",
  "page.photos.noVariant": "Variant unknown",
  "page.photos.noSku": "No SKU",
  "page.photos.tile.open": "Open the customer photo for {model} at full size",
  "page.photos.tile.noReturn": "Case no longer available",
  "page.photos.tile.toReturn": "Open case",
  "page.photos.pagination.heading": "Gallery pages",
  "page.photos.pagination.previous": "Previous",
  "page.photos.pagination.next": "Next",
  "page.photos.pagination.status": "{shown} of {total} photos · page {page} of {pages}",
  "page.photos.export.action": "Export as ZIP",
  "page.photos.export.truncated": "Truncated: this archive holds {shown} of {total} photos. Narrow the month to get the rest.",
  "page.photos.export.column.file": "File",
  "page.photos.export.column.order": "Order",
  "page.photos.export.column.return": "Case",
  "page.photos.export.column.position": "Item",
  "page.photos.export.column.model": "Model",
  "page.photos.export.column.modelSource": "Model source",
  "page.photos.export.column.variant": "Variant",
  "page.photos.export.column.sku": "SKU",
  "page.photos.export.column.reason": "Reason",
  "page.photos.export.column.review": "Review",
  "page.photos.export.column.reported": "Reported",
  "page.photos.export.column.uploaded": "Uploaded",
  "page.photos.export.column.state": "State",
  "page.photos.export.state.included": "included",
  "page.photos.export.state.missing": "no longer available",
  "page.photos.export.modelSource.product": "Shopify product",
  "page.photos.export.modelSource.title": "title only (product no longer in Shopify)",
  "page.photos.export.modelSource.none": "unknown",
  "page.photos.export.folder.unknownModel": "Model unknown",
  "page.photos.export.folder.byTitle": "by title",
  "page.photos.writeOff.title": "Write-off",
  "page.photos.writeOff.hint": "Confirmed defects per item, with the quantity counted as defective at the intake desk and not put away — by reported date, as a table for Excel. Wrong items are not included, and the filters above do not apply here.",
  "page.photos.writeOff.empty": "No confirmed defect yet — there is nothing to write off.",
  "page.photos.writeOff.period": "Period",
  "page.photos.writeOff.optionYear": "{period} (whole year)",
  "page.photos.writeOff.submit": "Download write-off",
  "page.photos.writeOff.heading": "Write-off {period}",
  "page.photos.writeOff.column.sku": "SKU",
  "page.photos.writeOff.column.name": "Product name",
  "page.photos.writeOff.column.units": "Quantity",
  "page.photos.writeOff.total": "Total",
  "page.photos.writeOff.basis": "Counted: confirmed defects excluding wrong items; quantity = units counted as defective at the intake desk and not put away; period by reported date.",
  "page.photos.writeOff.uncounted": "Not included: {count} confirmed defects not yet counted as defective at the intake desk.",
  "page.photos.writeOff.unreviewed": "Not included: {count} unreviewed items with a customer photo or counted as damaged at the intake desk.",
  "rules.trace.discount.uncoded.superseded.one": "A discount without a code on the order: {labels}. The strategy matches through the code noted on the order.",
  "rules.trace.discount.uncoded.superseded.other": "{count} discounts without a code on the order: {labels}. The strategy matches through the code noted on the order.",
  "rules.trace.result.suggestion.rounding.one": "The difference of {unexplained} is within the rounding tolerance of {tolerance} across {lines} affected line.",
  "rules.trace.result.suggestion.rounding.other": "The difference of {unexplained} is within the rounding tolerance of {tolerance} across {lines} affected lines.",
  "rules.trace.discount.strategy.free_item_over_amount": "Discount handling: free item from {threshold} order value — entitlement is re-checked on the items finally kept. Matching code: {code}.",
  "rules.trace.kept.priced.free_item.none": "No free item among the kept items — nothing deducted. Kept items: {cost}.",
  "rules.trace.kept.priced.free_item.entitled.one": "Entitlement still holds: kept value {kept} reaches the threshold {threshold} — {count} free item stays free. Kept items: {cost}.",
  "rules.trace.kept.priced.free_item.entitled.other": "Entitlement still holds: kept value {kept} reaches the threshold {threshold} — {count} free items stay free. Kept items: {cost}.",
  "rules.trace.kept.priced.free_item.lapsed.one": "Entitlement lapses: kept value {kept} is below the threshold {threshold} — {count} free item is charged at {charged}. Kept items: {cost}.",
  "rules.trace.kept.priced.free_item.lapsed.other": "Entitlement lapses: kept value {kept} is below the threshold {threshold} — {count} free items are charged at {charged}. Kept items: {cost}.",
  "rules.warning.free_item_below_zero": "The free item costs {charged}, more than the refund covers ({amount}). The amount is capped at 0.00 — please decide by hand whether the customer should pay the difference.",
  "rules.warning.free_item_below_zeroAsCredit": "The free item costs {charged}, more than the store credit covers ({amount}). The amount is capped at 0.00 — please decide by hand whether the customer should pay the difference.",
  "rules.warning.recomputation_without_strategy": "The recalculation moved the amount by {delta} although no discount strategy applies (fallback: proportional). The amount is computed correctly; the customer is missing the explanatory note for it. Please check the discount codes on this order.",
  "rules.failure.unknown": "The refund did not go through.",
  "rules.failure.unknownAsCredit": "The store credit did not go through.",
  "rules.failure.refund_rejected": "Shopify rejected the refund. Nothing was refunded.",
  "rules.failure.refund_rejectedAsCredit": "Shopify rejected the store credit. Nothing was credited.",
  "rules.failure.refund_failed": "The refund did not go through. Nothing was refunded.",
  "rules.failure.refund_failedAsCredit": "The store credit did not go through. Nothing was credited.",
  "rules.failure.refund_money_unknown": "It is unclear whether money was paid. Please check this order's refunds in the Shopify admin before you try again.",
  "rules.failure.refund_money_unknownAsCredit": "It is unclear whether money was paid. Please check this order's store credits in the Shopify admin before you try again.",
  "rules.failure.partial_booking": "Only part was refunded. Please re-evaluate; the rest is then calculated and can be approved.",
  "rules.failure.partial_bookingAsCredit": "Only part was credited. Please re-evaluate; the rest is then calculated and can be approved.",
  "rules.failure.exchange_release_failed": "Nothing was refunded: the exchange item could not be created in Shopify.",
  "rules.failure.exchange_release_failedAsCredit": "Nothing was credited: the exchange item could not be created in Shopify.",
  "rules.failure.already_refunded_at_shopify": "Money has already been refunded for this return in Shopify. retuno does not pay twice. If the return should still count as done, check the refund in the Shopify admin.",
  "rules.failure.already_refunded_at_shopifyAsCredit": "Money has already been paid back for this return in Shopify. retuno does not pay twice. If the return should still count as done, check the store credit in the Shopify admin.",
  "rules.failure.return_unknown": "This return no longer exists in Shopify.",
  "rules.failure.order_unknown": "The order for it no longer exists in Shopify.",
  "rules.failure.open_balance": "The order still has an open balance in Shopify. retuno only refunds once nothing is open.",
  "rules.failure.open_balanceAsCredit": "The order still has an open balance in Shopify. retuno only credits once nothing is open.",
  "rules.failure.money_basis_moved": "This calculation is out of date. Please re-evaluate, then approve.",
  "rules.failure.store_credit_unavailable": "Store credit is not available in this shop. Please refund to the payment method.",
  "rules.failure.no_refundable_transaction": "Shopify finds no payment that can be refunded.",
  "rules.failure.exchange_chain_refund": "The refund belongs in the original order of this exchange, but one of the safeguards does not hold. Nothing was refunded – please refund in Shopify in the original order.",
  "rules.failure.shop_disconnected": "The connection to Shopify is broken. Please reconnect the app.",
  "rules.summary.freeItemLapsed": "free item charged back",
  "page.settingsPolicy.strategy.freeItemOverAmount": "Free item above amount",
  "page.settingsPolicy.threshold": "Threshold for the free item",
  "page.settingsPolicy.onlyForFreeItem": "Only for “Free item above amount”. Order value from which the item is free — decimal form with a dot, e.g. 39.99.",
  "rules.trace.kept.priced.free_item.unclaimed.one": "{count} kept line costs nothing but does not belong to {code} — it is not charged back.",
  "rules.trace.kept.priced.free_item.unclaimed.other": "{count} kept lines cost nothing but do not belong to {code} — they are not charged back.",
  "undeliverable.reason.refused": "Refused / parcel stop",
  "undeliverable.reason.shippingConditions": "Shipping conditions not met",
  "undeliverable.reason.unknown": "Unknown",
  "undeliverable.reason.recipientUnknown": "Recipient could not be determined",
  "undeliverable.reason.missingPostnumber": "Missing Postnummer",
  "undeliverable.reason.notCollected": "Not collected",
  "undeliverable.state.open": "Open",
  "undeliverable.state.closed": "Closed",
  "undeliverable.state.discarded": "Discarded",
  "undeliverable.state.critical": "Critical",
  "duplicateDelivery.flag": "Duplicate delivery",
  "duplicateDelivery.capture.heading": "Duplicate delivery",
  "duplicateDelivery.capture.sameAsOrdered": "Same item as ordered",
  "duplicateDelivery.capture.quantity": "Quantity",
  "duplicateDelivery.capture.note": "Note",
  "duplicateDelivery.capture.submit": "Record as duplicate delivery",
  "duplicateDelivery.capture.done": "Recorded as a duplicate delivery. The clarification is on its own case.",
  "duplicateDelivery.capture.doneNoAccess": "Recorded as a duplicate delivery. It is checked and confirmed by whoever processes returns.",
  "duplicateDelivery.capture.doneStocked": "Recorded as a duplicate delivery and restocked. Whether it really is a duplicate delivery is checked later on its own case.",
  "duplicateDelivery.capture.doneStockedNoAccess": "Recorded as a duplicate delivery and restocked. It is checked and confirmed by whoever processes returns.",
  "duplicateDelivery.capture.notStocked": "The item is not restocked yet — the reason is shown on the duplicate delivery case.",
  "duplicateDelivery.capture.open": "Open case",
  "duplicateDelivery.overview.heading": "Arrived twice",
  "duplicateDelivery.error.itemMissing": "Please choose which item was in the parcel in addition. Nothing was saved.",
  "duplicateDelivery.error.quantity": "Please enter a quantity from 1 to 99. Nothing was saved.",
  "duplicateDelivery.error.alreadyDecided": "This case has already been checked.",
  "duplicateDelivery.state.open": "Clarification",
  "duplicateDelivery.state.confirmed": "Confirmed",
  "duplicateDelivery.state.closed": "Closed",
  "duplicateDelivery.state.not_duplicate": "No duplicate delivery",
  "undeliverable.contact.none": "No contact yet",
  "undeliverable.contact.mailQueued": "E-mail on its way",
  "undeliverable.contact.mailSent": "E-mail sent",
  "undeliverable.contact.mailFailed": "E-mail failed",
  "undeliverable.contact.mailUnknown": "E-mail queued",
  "undeliverable.contact.notChosen": "No e-mail — text to copy on the case",
  "undeliverable.contact.noRecipient": "No e-mail address — text to copy on the case",
  "undeliverable.contact.noOrder": "Order not found in Shopify — nobody contacted",
  "undeliverable.contact.failedReason": "Reason: {error}",
  "undeliverable.oldOrder": "Emergency/replacement shipment? The order is from {date}, more than 60 days ago. This is probably a replacement shipment that went out under the original order number.",
  "undeliverable.oldOrderShort": "older than 60 days — emergency/replacement shipment?",
  "undeliverable.siblingHint": "A return is also registered for this order:",
  "page.undeliverable.title": "Undeliverable shipments",
  "page.undeliverable.back": "Back to returns",
  "page.undeliverable.newLink": "Record undeliverable shipment",
  "page.undeliverable.filterHeading": "Filter by state",
  "page.undeliverable.filter.open": "Open",
  "page.undeliverable.filter.closed": "Closed",
  "page.undeliverable.filter.all": "All",
  "page.undeliverable.capped": "The list shows only the newest cases — more than {limit} match.",
  "page.undeliverable.emptyNoShop": "No shop is connected.",
  "page.undeliverable.emptyOpen": "No open undeliverable shipment. Closed ones are under “Closed”.",
  "page.undeliverable.empty": "No undeliverable shipment recorded yet.",
  "page.undeliverable.tableLabel": "Undeliverable shipments",
  "page.undeliverable.col.order": "Order",
  "page.undeliverable.col.reason": "Reason",
  "page.undeliverable.col.units": "Units",
  "page.undeliverable.col.state": "State",
  "page.undeliverable.col.when": "Recorded",
  "page.undeliverable.col.contact": "Contact",
  "page.undeliverable.closedNote": "The case for {order} is now “Customer contacted”.",
  "page.undeliverable.closedOpen": "Open case",
  "page.undeliverableNew.title": "Record undeliverable shipment",
  "page.undeliverableNew.orderLabel": "Order number — or name, e-mail, address",
  "page.undeliverableNew.orderSubmit": "Find order",
  "page.undeliverableNew.back": "Back to the list",
  "page.undeliverableNew.noLines": "This order has no line items.",
  "page.undeliverableNew.pickLines": "Which items came back?",
  "page.undeliverableNew.quantity": "{quantity} ordered",
  "page.undeliverableNew.quantityBack": "Returned:",
  "page.undeliverableNew.arrivedOther": "A different item was in the parcel",
  "page.undeliverableNew.arrivedQuestion": "Which item was in the parcel? Click to choose.",
  "page.undeliverableNew.reason": "Reason given by the carrier",
  "page.undeliverableNew.reasonEmpty": "Choose a reason",
  "page.undeliverableNew.submit": "Record and store",
  "page.undeliverableNew.error.noShop": "No shop is connected.",
  "page.undeliverableNew.error.orderUnknown": "Shopify does not know this order.",
  "page.undeliverableNew.error.noLines": "Tick at least one item.",
  "page.undeliverableNew.error.badQuantity": "The number must be between 1 and the quantity ordered.",
  "page.undeliverableNew.error.noReason": "Choose the carrier's reason. Nothing was recorded.",
  "page.undeliverableDetail.title": "Undeliverable shipment",
  "page.undeliverableDetail.heading": "Undeliverable shipment for",
  "page.undeliverableDetail.reason": "Reason",
  "page.undeliverableDetail.state": "State",
  "page.undeliverableDetail.lines": "Items that came back",
  "page.undeliverableDetail.quantityBack": "{quantity} returned",
  "page.undeliverableDetail.arrivedState": "In the parcel ({state})",
  "page.undeliverableDetail.orderedInstead": "Ordered was: {item} – the ordered item is booked into stock.",
  "page.undeliverableDetail.arrivedStocked": "Ordered was: {item} – shipped from China, the item that arrived is booked into stock.",
  "page.undeliverableDetail.arrivedNotStocked": "Ordered was: {item} – shipped from China, the item that arrived is only recorded as a note and is not booked into stock.",
  "page.undeliverableDetail.orderedOnly": "Ordered was: {item}.",
  "page.undeliverableDetail.close": "Close case",
  "page.undeliverableDetail.closeByHand": "Set to “Closed”",
  "page.undeliverableDetail.duplicateWarning": "This order has already been recorded - suspected duplicate delivery - don't send the email again until the case has been checked.",
  "page.undeliverableDetail.confirmDuplicate": "Duplicate delivery confirmed",
  "page.undeliverableDetail.discardDuplicate": "Recorded twice by mistake – discard",
  "page.undeliverableDetail.alreadyClosed": "This case was already closed — nothing changed.",
  "page.undeliverableDetail.error.unknownIntent": "This action is not known.",
  "page.undeliverableDetail.back": "Back to the list",
  "page.undeliverableDetail.timeline": "History",
  "page.undeliverableDetail.event.recorded": "Recorded",
  "page.undeliverableDetail.event.closed": "Closed",
  "page.undeliverableDetail.event.duplicate_confirmed": "Duplicate delivery confirmed",
  "page.undeliverableDetail.event.discarded": "Discarded – recorded twice by mistake",
  "page.undeliverableDetail.event.action_found_tracking": "Closed – new tracking number in Shopify",
  "page.undeliverableDetail.event.action_found_refund": "Closed – refund in Shopify",
  "page.undeliverableDetail.event.marked_critical": "Critical – no action in Shopify for over four weeks",
  "page.undeliverableDetail.event.closed_by_hand": "Closed – set by hand",
  "page.undeliverableDetail.event.restockedShopify.one": "Restocked in Shopify ({location}): {count} unit",
  "page.undeliverableDetail.event.restockedShopify.other": "Restocked in Shopify ({location}): {count} units",
  "page.undeliverableDetail.event.restockedExternal.one": "Reported to the merchandise system: {count} unit",
  "page.undeliverableDetail.event.restockedExternal.other": "Reported to the merchandise system: {count} units",
  "page.undeliverableDetail.notRestocked": "Not restocked: {items}.",
  "page.undeliverableDetail.restockRefusal.no_right": "retuno may not change stock in Shopify yet — the new app version has not been approved.",
  "page.undeliverableDetail.restockRefusal.no_location": "No restock location is selected in the settings.",
  "page.undeliverableDetail.restockRefusal.refused": "Shopify refused: {detail}",
  "page.undeliverableDetail.restockRefusal.no_variant": "Shopify no longer knows a variant for this item.",
  "page.undeliverableDetail.restockRefusal.failed": "Shopify did not answer: {detail}",
  "page.undeliverableDetail.restockRefusal.china_note": "Shipped from China: the item that arrived is only recorded as a note, retuno cannot book it into stock. Please book the stock by hand in Shopify.",
  "page.undeliverableDetail.restockRefusal.china_note_external": "Shipped from China: the item that arrived is only recorded as a note, retuno cannot book it into stock. Please book the stock by hand in the inventory system.",
  "page.undeliverableDetail.restockRefusal.origin_unknown": "retuno could not read from Shopify whether the parcel came from China, so nothing was booked into stock. “Restock again” asks once more.",
  "page.undeliverableDetail.restockAgain": "Restock again",
  "page.returns.undeliverableLink": "Undeliverable shipments",
  "page.returns.duplicateDeliveriesLink": "Duplicate deliveries",
  "page.returns.duplicatesWaiting": "Duplicate deliveries waiting for review ({count})",
  "page.duplicateDeliveries.title": "Duplicate deliveries",
  "page.duplicateDeliveries.back": "Back to returns",
  "page.duplicateDeliveries.filterHeading": "Filter by state",
  "page.duplicateDeliveries.filter.open": "Open",
  "page.duplicateDeliveries.filter.closed": "Closed",
  "page.duplicateDeliveries.filter.all": "All",
  "page.duplicateDeliveries.capped": "The list shows only the newest cases — more than {limit} match.",
  "page.duplicateDeliveries.emptyNoShop": "No shop is connected.",
  "page.duplicateDeliveries.emptyOpen": "No open duplicate delivery. Closed ones are under “Closed”.",
  "page.duplicateDeliveries.empty": "No duplicate delivery recorded yet.",
  "page.duplicateDeliveries.tableLabel": "Duplicate deliveries",
  "page.duplicateDeliveries.col.order": "Order",
  "page.duplicateDeliveries.col.item": "Item",
  "page.duplicateDeliveries.col.units": "Units",
  "page.duplicateDeliveries.col.state": "State",
  "page.duplicateDeliveries.col.when": "Recorded",
  "page.duplicateDeliveryDetail.title": "Duplicate delivery",
  "page.duplicateDeliveryDetail.heading": "Duplicate delivery for {order}",
  "page.duplicateDeliveryDetail.clarification": "Clarification — duplicate delivery recorded, not checked yet ({when})",
  "page.duplicateDeliveryDetail.confirm": "Duplicate delivery confirmed",
  "page.duplicateDeliveryDetail.notDuplicate": "No duplicate delivery",
  "page.duplicateDeliveryDetail.closeSentence.one": "Close the case: {count} item will be restocked. No refund, no store credit, no exchange.",
  "page.duplicateDeliveryDetail.closeSentence.other": "Close the case: {count} items will be restocked. No refund, no store credit, no exchange.",
  "page.duplicateDeliveryDetail.closeSentenceStocked.one": "Close the case: {count} item is already restocked. No refund, no store credit, no exchange.",
  "page.duplicateDeliveryDetail.closeSentenceStocked.other": "Close the case: {count} items are already restocked. No refund, no store credit, no exchange.",
  "page.duplicateDeliveryDetail.notUnstocked": "Not removed from stock: {items}.",
  "page.duplicateDeliveryDetail.unstockAgain": "Remove from stock again",
  "page.duplicateDeliveryDetail.unstockExternal": "The item was already restocked in your inventory system when it was recorded. retuno cannot remove it there – please remove it yourself before you restock it as a return of the other order.",
  "page.duplicateDeliveryDetail.unstockedNote": "The item was already restocked when it was recorded. retuno has removed it from stock in Shopify again — the return of the other order restocks it.",
  "page.duplicateDeliveryDetail.fwgoneReversal.waiting": "Being removed from stock in FWG.ONE …",
  "page.duplicateDeliveryDetail.fwgoneReversal.done.one": "Removed from stock in FWG.ONE again: {count} item.",
  "page.duplicateDeliveryDetail.fwgoneReversal.done.other": "Removed from stock in FWG.ONE again: {count} items.",
  "page.duplicateDeliveryDetail.fwgoneReversal.failed": "Not removed from stock in FWG.ONE: {detail} Please check there yourself.",
  "page.duplicateDeliveryDetail.close": "Close case",
  "page.duplicateDeliveryDetail.notDuplicateNext": "No duplicate delivery — capture the item as a normal return.",
  "page.duplicateDeliveryDetail.captureReturn": "Capture a return",
  "page.duplicateDeliveryDetail.order": "Order",
  "page.duplicateDeliveryDetail.return": "Return",
  "page.duplicateDeliveryDetail.item": "Item",
  "page.duplicateDeliveryDetail.quantity": "Quantity",
  "page.duplicateDeliveryDetail.note": "Note",
  "page.duplicateDeliveryDetail.back": "Back to the list",
  "page.duplicateDeliveryDetail.timeline": "History",
  "page.duplicateDeliveryDetail.event.recorded": "Recorded as duplicate delivery: {item}",
  "page.duplicateDeliveryDetail.event.confirmed": "Duplicate delivery confirmed",
  "page.duplicateDeliveryDetail.event.closed": "Closed",
  "page.duplicateDeliveryDetail.event.not_duplicate": "No duplicate delivery",
  "page.duplicateDeliveryDetail.event.unstocked.one": "Removed from stock in Shopify ({location}): {count} unit",
  "page.duplicateDeliveryDetail.event.unstocked.other": "Removed from stock in Shopify ({location}): {count} units",
  "page.duplicateDeliveryDetail.event.unstockedFwgone.one": "Removed from stock in FWG.ONE: {count} item",
  "page.duplicateDeliveryDetail.event.unstockedFwgone.other": "Removed from stock in FWG.ONE: {count} items",
  "page.returns.stray.show": "Stray items – send back with the customer's label: {count} open",
  "page.returns.stray.active": "Filtered: stray items – send back with the customer's label.",
  "page.returns.stray.clear": "Clear filter",
  "page.returns.unbooked.show": "Approval without booking: {count} open",
  "page.returns.unbooked.active": "Filtered: approval without booking.",
  "page.returns.unbooked.clear": "Clear filter",
  "page.intake.undeliverableLink": "Undeliverable shipment (parcel came back unopened)",
  "mail.undeliverable.subject": "Your order {order} has been returned to us – {shop}",
  "mail.undeliverable.refused": "Hi {name},\nwe have just found that your order {order} has come back to us. Our carrier told us that the parcel was refused. Please note that refusing a parcel is not a formal withdrawal, so we need a short word from you on what should happen with it: we can send it out to you again — tell us your full, corrected address if it has changed — or cancel the order and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.shippingConditions": "Hi {name},\nwe have just found that your order {order} has come back to us. Something went wrong while it was being shipped, so the parcel could not be delivered properly. We can send it out to you again — tell us your full, corrected address if it has changed — or cancel the order and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.unknown": "Hi {name},\nwe have just found that your order {order} has come back to us. Our carrier did not give us a clear reason for the return, so we would like to ask you how to go on: we can send the order out to you again — tell us your full, corrected address if it has changed — or cancel it and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.recipientUnknown": "Hi {name},\nwe have just found that your order {order} has come back to us. Our carrier told us that the recipient could not be found at the address given. Please send us your full, correct address and we will send the order out again — or tell us to cancel it and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.missingPostnumber": "Hi {name},\nwe have found that your order {order} has come back to us. According to our carrier the parcel could not be delivered to the packing station you gave, because the post number needed for it was missing. Send us your post number together with the packing station and we will send the order out again — or tell us to cancel it and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.notCollected": "Hi {name},\nwe have just found that your order {order} has come back to us. Our carrier told us that the parcel was not collected within the storage period. We can send it out to you again — tell us your full, corrected address if it has changed — or cancel the order and refund what you paid. We look forward to hearing from you.",
  "mail.undeliverable.closing": "Kind regards\n{shop}",
  "page.settingsMail.undeliverableContact.name": "Parcel came back (undeliverable shipment)",
  "page.settingsMail.undeliverableContact.when": "Goes out when you close an undeliverable shipment and leave the tick “Contact the customer by e-mail” set. The text follows the carrier's reason. This switch is the default for that tick.",
  "page.settingsMail.undeliverableContact.off": "Switched off, the tick is empty by default — you can still set it case by case. Without the e-mail the case page shows the finished text to copy, and you write from your own mailbox.",
  "page.settingsTexts.section.undeliverable": "Email · Parcel came back",
  "page.undeliverableDetail.contact": "Contact the customer by e-mail",
  "page.undeliverableDetail.contactHint": "The text follows the carrier's reason you recorded. Without the tick nothing is sent — the finished text appears here to copy.",
  "page.undeliverableDetail.copyHeading": "Text for the customer",
  "page.undeliverableDetail.copyHint": "Copy this into your own e-mail. Nothing was sent from here.",
  "page.undeliverableDetail.copySubject": "Subject",
  "page.undeliverableDetail.copyRegenerated": "Text regenerated from Shopify, as of today.",
  "page.undeliverableDetail.copyUnavailable": "Text no longer available — Shopify no longer returns the order, for example because it is older than 60 days.",
  "page.undeliverableDetail.copyUnavailableAllOrders": "Text no longer available — Shopify no longer returns the order.",
  "page.undeliverableDetail.contactHeading": "Customer contact",
  "page.undeliverableDetail.event.customer_contacted": "Customer contacted",
  "page.undeliverableDetail.event.contact_impossible": "No contact possible — order not found in Shopify",
  "undeliverable.state.contacted": "Customer contacted",
  "nav.prefsGroup.returns": "Returns",
  "nav.prefsGroup.portalMail": "Customer portal & emails",
  "nav.prefsGroup.shippingStock": "Shipping & warehouse",
  "nav.prefsGroup.access": "Access",
  "nav.prefsGroup.connections": "Connections",
  "nav.prefsGroup.privacyOps": "Privacy & operations",
  "nav.prefsGroup.reports": "Reports",
  "nav.prefsSearch": "Search",
  "nav.prefsSub.access": "Items customers cannot return, or only with restrictions.",
  "nav.prefsSub.exchange": "Whether and how items may be exchanged.",
  "nav.prefsSub.reasons": "Which reasons customers see in the portal.",
  "nav.prefsSub.branding": "How the portal looks to customers.",
  "nav.prefsSub.contact": "The name and address retuno uses to write to customers.",
  "nav.prefsSub.mail": "Which emails customers receive.",
  "nav.prefsSub.texts": "Portal and email texts in your own words.",
  "nav.prefsSub.shipping": "How customers can send items back.",
  "nav.prefsSub.warehouse": "Misdirected parcels, damaged goods and shipping from China.",
  "nav.prefsSub.shortNames": "What items are called everywhere in retuno.",
  "nav.prefsSub.team": "Who can sign in and which areas each person sees.",
  "nav.prefsSub.api": "Keys for programs that work with retuno.",
  "nav.prefsSub.shop": "Which Shopify shop is connected.",
  "nav.prefsSub.integrations": "Connections to other tools.",
  "nav.prefsSub.photos": "Photos from customers and the warehouse, evaluated.",
  "nav.prefsSub.repeat": "Customers who return unusually often.",
  "nav.prefsPart.deadlines": "Deadlines",
  "nav.prefsPart.fees": "Fees & refunds",
  "nav.prefsPart.discounts": "Discounts",
  "nav.prefsPart.history": "Rule versions",
  "nav.prefsSub.deadlines": "How long customers may send items back.",
  "nav.prefsSub.fees": "What is deducted from or added to the refund.",
  "nav.prefsSub.discounts": "How a discount is recalculated when customers keep only part of an order.",
  "nav.prefsSub.history": "Which rules applied when."
}
