Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.
With discount codes you offer your customers a direct price reduction at checkout. You create a code, set the discount (absolute or percentage), and optionally decide which resources it applies to and how often it may be redeemed. Customers enter the code during the booking process and the price is reduced immediately.
Available from the Professional plan.
Activate the Discount codes app beforehand under Account → Apps & Integrations → anny Apps (switch Enable for your organization).
A discount code is a freely chosen character code (for example, “SUMMER20”) that customers enter at checkout. The stored discount is deducted directly from the booking price. Unlike booking codes, there is no balance consumed across several bookings: the discount code reduces the price of the current booking once.The logic is simple:
The customer enters the code at checkout.
anny checks: is the code valid (expiry date, available quantity, matching resource)?
On success, the discount is applied and the reduced price is shown.
On the invoice, the original price appears minus the discount.
Discount codes can also be used for free bookings: set a 100% discount to make a resource accessible free of charge for selected people.
You run a promotion or marketing campaign: Create a code with a limited quantity and an expiry date.
You want to give existing customers or partners a special rate: Create a code with an unlimited quantity, restricted to specific resources.
You want to offer a booking completely free of charge: Set a 100% discount for a specific resource.
Not suitable for: Balance logic across several bookings (use booking packages/value vouchers for that) or recurring discounts on subscriptions (subscription discounts are stored directly in the admin during subscription creation).
A note visible only to admins about the intended use
Absolute discount
Fixed amount in euros that is deducted
Relative discount
Percentage deduction from the booking price
Expiry date
Date and time until which the code is valid
Available quantity
How often the code can be redeemed in total
Once per customer
Toggle: limits redemption to once per customer (by email)
Valid for resources
Optional restriction to resources; empty = valid account-wide
Include add-ons
Discount also applies to booked add-ons
At checkout, customers see Add voucher code. After successful entry, the reduced price is shown directly. On the booking page they can also enter the same code in the Booking code field. The discount then already applies when adding to the cart and in the price preview.
“Valid for resources” is optional. If you leave the field empty, the discount code applies account-wide to all resources. Enter individual resources to restrict the code specifically.
In the sidebar, open Management → Codes → Discount codes (visible after activating the app).
2
Create a new code
Click New. anny automatically generates a code, which you can overwrite.
3
Set the discount
Enter either an absolute discount (for example, 10 euros) or a relative discount (for example, 20%). Do not set both at the same time.
4
Set restrictions
Under Valid for resources, optionally choose the resource(s) the code should apply to. If you leave the field empty, the code applies account-wide. Optionally set an expiry date and an available quantity.
5
Add-ons (optional)
Activate Include add-ons if the discount should also apply to add-ons.
6
Limit redemption per customer (optional)
Activate the toggle Once per customer if each person may redeem the code only once. anny checks redemption by email address.
7
Save
The code is active immediately and can be used by customers at checkout.
A seminar house wants to run a promotion in spring: 20% off all rooms, limited to 50 redemptions.
1
Create the code
Open Management → Codes → Discount codes → New. Set the code to “SPRING20”.
2
Configure the discount
Enter 20% as a relative discount.
3
Assign resources
Under Valid for resources, select all seminar rooms.
4
Set restrictions
Set the available quantity to 50 and the expiry date to the end of May.
5
Result
Customers enter “SPRING20” at checkout and get 20% off. After 50 redemptions or after the expiry date, the code is no longer valid.
Coworking operator offers partners free day passes
A coworking space wants to give cooperation partners free day bookings, without setting up a subscription or quota.
1
Create the code
Open Management → Codes → Discount codes → New. Set the code to “PARTNER100”.
2
Set a 100% discount
Enter 100% as a relative discount.
3
Assign the resource
Select the day pass resource.
4
Limit the quantity
Set the available quantity to the desired amount (for example, 10).
5
Result
Partners enter “PARTNER100” and book free of charge. After 10 redemptions, the code is used up.
Course provider gives a discount code for the first class visit
An activity provider wants to give new participants a discount for their first class visit. Each person should be able to use the code exactly once, even if they book more classes later.
1
Create the code
Open Management → Codes → Discount codes → New. Set the code to “FIRSTCLASS”.
2
Configure the discount
Enter the desired discount, for example 50% as a relative discount.
3
Assign the resource
Under Valid for resources, select the class resource(s).
4
Activate once per customer
Activate the toggle Once per customer so each person can redeem the code only at their first checkout.
5
Result
Participants enter “FIRSTCLASS” at their first class booking and get the discount. On later bookings, the same code for the same email address is not applied again.
Can I create a discount code for all resources at once?
Yes. Simply leave the Valid for resources field empty, then the code applies account-wide to all resources. Alternatively, select individual resources to restrict the code.
What happens if an absolute and a relative discount are set at the same time?
Set only one of the two values. If both are set by mistake, the relative discount is prioritized.
Can customers combine multiple discount codes in one booking?
No. Only one discount code can be entered per booking.
Does the discount code also apply to bookings on request?
Yes, provided Add voucher code is shown at checkout. With some configurations (for example, instant confirmation without a checkout step), the field may be missing.
How do I make sure each customer can use a code only once?
Activate the toggle Once per customer when creating or editing the code. anny then checks redemption by email address and applies the code only once per person.
Can customers enter the discount code before checkout?
Yes. On the booking page the code works in the Booking code field (the same field as for packages and value vouchers). The price is then reduced before checkout. Checkout still has a separate Add voucher code control.
Check whether the Discount codes app is activated under Account → Apps & Integrations → anny Apps. Also make sure a valid code exists for the booked resource.
The code is rejected even though it exists
Possible causes: the expiry date has passed, the available quantity is used up, or the code does not apply to the selected resource. Check all three restrictions. If the toggle Once per customer is active, also check whether the email address has already redeemed the code.
The discount is not shown correctly at checkout
In embedded widgets, it could happen that the original price is shown briefly. Reload the page. If the problem persists, contact support.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"anny","colors":{"primary":"#3c69ef","light":"#6789ef","dark":"#2055f3"},"logo":{"light":"https://mintcdn.com/anny-85c98540/ijC9sfplIYStpnep/images/anny-lockup-hell-inline.svg?fit=max\u0026auto=format\u0026n=ijC9sfplIYStpnep\u0026q=85\u0026s=7d8ad75aba0be5dcd6f5dacf0edc35b1","dark":"https://mintcdn.com/anny-85c98540/ijC9sfplIYStpnep/images/anny-lockup-dunkel-inline.svg?fit=max\u0026auto=format\u0026n=ijC9sfplIYStpnep\u0026q=85\u0026s=29c002d1a13f15f47ef5866bf557bb87","href":"https://anny.co"},"favicon":{"light":"https://mintcdn.com/anny-85c98540/ijC9sfplIYStpnep/images/anny-icon-flach.svg?fit=max\u0026auto=format\u0026n=ijC9sfplIYStpnep\u0026q=85\u0026s=989439e987cd6b526bb0bfe00fb24856","dark":"https://mintlify.s3.us-west-1.amazonaws.com/anny-85c98540/favicon.svg"},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/annyco","instagram":"https://www.instagram.com/anny.company?hl=de","youtube":"https://www.youtube.com/@anny.company"}},"icons":{"library":"fontawesome"},"integrations":{"gtm":{"tagId":"GTM-TTDNBZTD"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"languages":[{"language":"de","default":true,"href":"welcome"},{"language":"en","href":"en/welcome"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"anny-85c98540","hasAudioNarration":false,"actualSubdomain":"anny-85c98540","customDomains":["docs.anny.co"],"gitSource":{"type":"github","owner":"anny-co","repo":"knowledge-base","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"5520a7f9-be45-4262-9ce3-cf7676393cb6","liveDeploymentHistoryId":"6ae8bb3987d830608674b515","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae8bb3987d830608674b515"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae8bb3987d830608674b515","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"de","tag":"Developers","count":617},{"language":"de","tag":"Admin API","count":348},{"language":"de","tag":"Admin","count":167},{"language":"en","tag":"Admin","count":163},{"language":"de","tag":"Customer API","count":122},{"language":"de","tag":"Data models","count":121},{"language":"de","tag":"Scalar reference catalog","count":99},{"language":"en","tag":"Integrations","count":44},{"language":"de","tag":"Integrationen","count":43},{"language":"de","tag":"Orders \u0026 Billing","count":43},{"language":"de","tag":"Service Configuration","count":41},{"language":"de","tag":"Booking Management","count":37},{"language":"en","tag":"Your Organization","count":26},{"language":"en","tag":"Getting Started","count":22},{"language":"en","tag":"Booking Options \u0026 Services","count":17},{"language":"en","tag":"Access \u0026 Smart Locks","count":15},{"language":"en","tag":"Use Cases","count":15},{"language":"en","tag":"anny AI","count":11},{"language":"en","tag":"Security \u0026 Login","count":11},{"language":"en","tag":"End Users","count":10},{"language":"default","tag":"Changelog","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"en/discount-codes","slug":"/en/discount-codes","pageMetadata":{"title":"Discount Codes","sidebarTitle":"Discount Codes","description":"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.","public":true,"href":"/en/discount-codes"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={blockquote:`blockquote`,code:`code`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Heading,Info,Step,Steps,Table,Tip,Visibility}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Visibility)_missingMdxReference(`Visibility`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`With discount codes you offer your customers a direct price reduction at checkout. You create a code, set the discount (absolute or percentage), and optionally decide which resources it applies to and how often it may be redeemed. Customers enter the code during the booking process and the price is reduced immediately.`}),`\n`,_jsx(Info,{children:_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Available from the Professional plan.`}),`\n`,_jsxs(_components.li,{children:[`Activate the `,_jsx(_components.strong,{children:`Discount codes`}),` app beforehand under `,_jsx(_components.strong,{children:`Account`}),` → `,_jsx(_components.strong,{children:`Apps \u0026 Integrations`}),` → `,_jsx(_components.strong,{children:`anny Apps`}),` (switch `,_jsx(_components.strong,{children:`Enable for your organization`}),`).`]}),`\n`]})}),`\n`,_jsx(Heading,{level:`2`,id:`how-does-the-concept-work`,children:`How does the concept work?`}),`\n`,_jsx(_components.p,{children:`A discount code is a freely chosen character code (for example, “SUMMER20”) that customers enter at checkout. The stored discount is deducted directly from the booking price. Unlike booking codes, there is no balance consumed across several bookings: the discount code reduces the price of the current booking once.`}),`\n`,_jsx(_components.p,{children:`The logic is simple:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The customer enters the code at checkout.`}),`\n`,_jsx(_components.li,{children:`anny checks: is the code valid (expiry date, available quantity, matching resource)?`}),`\n`,_jsx(_components.li,{children:`On success, the discount is applied and the reduced price is shown.`}),`\n`,_jsx(_components.li,{children:`On the invoice, the original price appears minus the discount.`}),`\n`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Discount codes can also be used for free bookings: set a 100% discount to make a resource accessible free of charge for selected people.`})}),`\n`,_jsx(Heading,{level:`2`,id:`when-do-i-use-this`,children:`When do I use this?`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`You run a promotion or marketing campaign`}),`: Create a code with a limited quantity and an expiry date.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`You want to give existing customers or partners a special rate`}),`: Create a code with an unlimited quantity, restricted to specific resources.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`You want to offer a booking completely free of charge`}),`: Set a 100% discount for a specific resource.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Not suitable for`}),`: Balance logic across several bookings (use booking packages/value vouchers for that) or recurring discounts on subscriptions (subscription discounts are stored directly in the admin during subscription creation).`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`relationship-to-other-features`,children:`Relationship to other features`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Feature`}),_jsx(_components.th,{children:`Relationship`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Booking packages \u0026 codes`}),_jsx(_components.td,{children:`Distinction: booking codes are redeemable balance with a quota. Discount codes are pure price reductions without balance.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Dynamic pricing`}),_jsx(_components.td,{children:`Discount codes and dynamic pricing rules can be combined. The discount is applied to the dynamically calculated price.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Add-ons`}),_jsx(_components.td,{children:`With the toggle “Include add-ons”, the discount is also applied to booked add-ons.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`settings-\u0026-options`,children:`Settings \u0026 options`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting (admin)`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Voucher code`}),_jsx(_components.td,{children:`The code that customers enter at checkout`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Internal description`}),_jsx(_components.td,{children:`A note visible only to admins about the intended use`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Absolute discount`}),_jsx(_components.td,{children:`Fixed amount in euros that is deducted`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Relative discount`}),_jsx(_components.td,{children:`Percentage deduction from the booking price`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Expiry date`}),_jsx(_components.td,{children:`Date and time until which the code is valid`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Available quantity`}),_jsx(_components.td,{children:`How often the code can be redeemed in total`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Once per customer`}),_jsx(_components.td,{children:`Toggle: limits redemption to once per customer (by email)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Valid for resources`}),_jsx(_components.td,{children:`Optional restriction to resources; empty = valid account-wide`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Include add-ons`}),_jsx(_components.td,{children:`Discount also applies to booked add-ons`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`At checkout, customers see `,_jsx(_components.strong,{children:`Add voucher code`}),`. After successful entry, the reduced price is shown directly. On the booking page they can also enter the same code in the `,_jsx(_components.strong,{children:`Booking code`}),` field. The discount then already applies when adding to the cart and in the price preview.`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`“Valid for resources” is optional. If you leave the field empty, the discount code applies account-wide to all resources. Enter individual resources to restrict the code specifically.`})}),`\n`,_jsx(Heading,{level:`2`,id:`create-a-discount-code`,children:`Create a discount code`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open discount codes`,children:_jsxs(_components.p,{children:[`In the sidebar, open `,_jsx(_components.strong,{children:`Management`}),` → `,_jsx(_components.strong,{children:`Codes`}),` → `,_jsx(_components.strong,{children:`Discount codes`}),` (visible after activating the app).`]})}),_jsx(Step,{title:`Create a new code`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`New`}),`. anny automatically generates a code, which you can overwrite.`]})}),_jsx(Step,{title:`Set the discount`,children:_jsxs(_components.p,{children:[`Enter either an `,_jsx(_components.strong,{children:`absolute discount`}),` (for example, 10 euros) or a `,_jsx(_components.strong,{children:`relative discount`}),` (for example, 20%). Do not set both at the same time.`]})}),_jsx(Step,{title:`Set restrictions`,children:_jsxs(_components.p,{children:[`Under `,_jsx(_components.strong,{children:`Valid for resources`}),`, optionally choose the resource(s) the code should apply to. If you leave the field empty, the code applies account-wide. Optionally set an expiry date and an available quantity.`]})}),_jsx(Step,{title:`Add-ons (optional)`,children:_jsxs(_components.p,{children:[`Activate `,_jsx(_components.strong,{children:`Include add-ons`}),` if the discount should also apply to add-ons.`]})}),_jsx(Step,{title:`Limit redemption per customer (optional)`,children:_jsxs(_components.p,{children:[`Activate the toggle `,_jsx(_components.strong,{children:`Once per customer`}),` if each person may redeem the code only once. anny checks redemption by email address.`]})}),_jsx(Step,{title:`Save`,children:_jsx(_components.p,{children:`The code is active immediately and can be used by customers at checkout.`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`examples`,children:`Examples`}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`Seminar house gives 20% off for a spring campaign`,id:`seminar-house-gives-20-off-for-a-spring-campaign`,children:[_jsx(_components.p,{children:`A seminar house wants to run a promotion in spring: 20% off all rooms, limited to 50 redemptions.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Create the code`,children:_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Management`}),` → `,_jsx(_components.strong,{children:`Codes`}),` → `,_jsx(_components.strong,{children:`Discount codes`}),` → `,_jsx(_components.strong,{children:`New`}),`. Set the code to “SPRING20”.`]})}),_jsx(Step,{title:`Configure the discount`,children:_jsx(_components.p,{children:`Enter 20% as a relative discount.`})}),_jsx(Step,{title:`Assign resources`,children:_jsxs(_components.p,{children:[`Under `,_jsx(_components.strong,{children:`Valid for resources`}),`, select all seminar rooms.`]})}),_jsx(Step,{title:`Set restrictions`,children:_jsx(_components.p,{children:`Set the available quantity to 50 and the expiry date to the end of May.`})}),_jsx(Step,{title:`Result`,children:_jsx(_components.p,{children:`Customers enter “SPRING20” at checkout and get 20% off. After 50 redemptions or after the expiry date, the code is no longer valid.`})})]})]}),_jsxs(Accordion,{title:`Coworking operator offers partners free day passes`,id:`coworking-operator-offers-partners-free-day-passes`,children:[_jsx(_components.p,{children:`A coworking space wants to give cooperation partners free day bookings, without setting up a subscription or quota.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Create the code`,children:_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Management`}),` → `,_jsx(_components.strong,{children:`Codes`}),` → `,_jsx(_components.strong,{children:`Discount codes`}),` → `,_jsx(_components.strong,{children:`New`}),`. Set the code to “PARTNER100”.`]})}),_jsx(Step,{title:`Set a 100% discount`,children:_jsx(_components.p,{children:`Enter 100% as a relative discount.`})}),_jsx(Step,{title:`Assign the resource`,children:_jsx(_components.p,{children:`Select the day pass resource.`})}),_jsx(Step,{title:`Limit the quantity`,children:_jsx(_components.p,{children:`Set the available quantity to the desired amount (for example, 10).`})}),_jsx(Step,{title:`Result`,children:_jsx(_components.p,{children:`Partners enter “PARTNER100” and book free of charge. After 10 redemptions, the code is used up.`})})]})]}),_jsxs(Accordion,{title:`Course provider gives a discount code for the first class visit`,id:`course-provider-gives-a-discount-code-for-the-first-class-visit`,children:[_jsx(_components.p,{children:`An activity provider wants to give new participants a discount for their first class visit. Each person should be able to use the code exactly once, even if they book more classes later.`}),_jsxs(Steps,{children:[_jsx(Step,{title:`Create the code`,children:_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Management`}),` → `,_jsx(_components.strong,{children:`Codes`}),` → `,_jsx(_components.strong,{children:`Discount codes`}),` → `,_jsx(_components.strong,{children:`New`}),`. Set the code to “FIRSTCLASS”.`]})}),_jsx(Step,{title:`Configure the discount`,children:_jsx(_components.p,{children:`Enter the desired discount, for example 50% as a relative discount.`})}),_jsx(Step,{title:`Assign the resource`,children:_jsxs(_components.p,{children:[`Under `,_jsx(_components.strong,{children:`Valid for resources`}),`, select the class resource(s).`]})}),_jsx(Step,{title:`Activate once per customer`,children:_jsxs(_components.p,{children:[`Activate the toggle `,_jsx(_components.strong,{children:`Once per customer`}),` so each person can redeem the code only at their first checkout.`]})}),_jsx(Step,{title:`Result`,children:_jsx(_components.p,{children:`Participants enter “FIRSTCLASS” at their first class booking and get the discount. On later bookings, the same code for the same email address is not applied again.`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`faq`,children:`FAQ`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Can I create a discount code for all resources at once?`,id:`can-i-create-a-discount-code-for-all-resources-at-once`,children:_jsxs(_components.p,{children:[`Yes. Simply leave the `,_jsx(_components.strong,{children:`Valid for resources`}),` field empty, then the code applies account-wide to all resources. Alternatively, select individual resources to restrict the code.`]})}),_jsx(Accordion,{title:`What happens if an absolute and a relative discount are set at the same time?`,id:`what-happens-if-an-absolute-and-a-relative-discount-are-set-at-the-same-time`,children:_jsx(_components.p,{children:`Set only one of the two values. If both are set by mistake, the relative discount is prioritized.`})}),_jsx(Accordion,{title:`Can customers combine multiple discount codes in one booking?`,id:`can-customers-combine-multiple-discount-codes-in-one-booking`,children:_jsx(_components.p,{children:`No. Only one discount code can be entered per booking.`})}),_jsx(Accordion,{title:`Does the discount code also apply to bookings on request?`,id:`does-the-discount-code-also-apply-to-bookings-on-request`,children:_jsxs(_components.p,{children:[`Yes, provided `,_jsx(_components.strong,{children:`Add voucher code`}),` is shown at checkout. With some configurations (for example, instant confirmation without a checkout step), the field may be missing.`]})}),_jsx(Accordion,{title:`How do I make sure each customer can use a code only once?`,id:`how-do-i-make-sure-each-customer-can-use-a-code-only-once`,children:_jsxs(_components.p,{children:[`Activate the toggle `,_jsx(_components.strong,{children:`Once per customer`}),` when creating or editing the code. anny then checks redemption by email address and applies the code only once per person.`]})}),_jsx(Accordion,{title:`Can customers enter the discount code before checkout?`,id:`can-customers-enter-the-discount-code-before-checkout`,children:_jsxs(_components.p,{children:[`Yes. On the booking page the code works in the `,_jsx(_components.strong,{children:`Booking code`}),` field (the same field as for packages and value vouchers). The price is then reduced before checkout. Checkout still has a separate `,_jsx(_components.strong,{children:`Add voucher code`}),` control.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`No voucher code field is shown at checkout`,id:`no-voucher-code-field-is-shown-at-checkout`,children:_jsxs(_components.p,{children:[`Check whether the `,_jsx(_components.strong,{children:`Discount codes`}),` app is activated under `,_jsx(_components.strong,{children:`Account`}),` → `,_jsx(_components.strong,{children:`Apps \u0026 Integrations`}),` → `,_jsx(_components.strong,{children:`anny Apps`}),`. Also make sure a valid code exists for the booked resource.`]})}),_jsx(Accordion,{title:`The code is rejected even though it exists`,id:`the-code-is-rejected-even-though-it-exists`,children:_jsxs(_components.p,{children:[`Possible causes: the expiry date has passed, the available quantity is used up, or the code does not apply to the selected resource. Check all three restrictions. If the toggle `,_jsx(_components.strong,{children:`Once per customer`}),` is active, also check whether the email address has already redeemed the code.`]})}),_jsx(Accordion,{title:`The discount is not shown correctly at checkout`,id:`the-discount-is-not-shown-correctly-at-checkout`,children:_jsx(_components.p,{children:`In embedded widgets, it could happen that the original price is shown briefly. Reload the page. If the problem persists, contact support.`})})]}),`\n`,_jsx(Visibility,{for:`agents`,children:_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`Important information for agents:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Feature: discount codes. Plan: Professional. Activation: Account → Apps \u0026 Integrations → anny Apps → Discount codes (switch “Enable for your organization”).`}),`\n`,_jsxs(_components.li,{children:[`UI path: `,_jsx(_components.strong,{children:`Management`}),` → `,_jsx(_components.strong,{children:`Codes`}),` → `,_jsx(_components.strong,{children:`Discount codes`}),` (sidebar, visible after activation).`]}),`\n`,_jsx(_components.li,{children:`“Valid for resources” is optional. Empty = the code applies account-wide to all resources. With entries = the code applies only to the chosen resources.`}),`\n`,_jsx(_components.li,{children:`Only ONE discount code possible per booking.`}),`\n`,_jsx(_components.li,{children:`Toggle “Once per customer”: if active, the code is redeemable only once per customer. The customer is identified by email address.`}),`\n`,_jsx(_components.li,{children:`“Available quantity” (total number of all redemptions) and “Once per customer” (max. 1 per person) are independent and combinable.`}),`\n`,_jsx(_components.li,{children:`If “Once per customer” is active and the same email address has already redeemed the code: the code is not applied again at checkout, not even on later bookings.`}),`\n`,_jsx(_components.li,{children:`Combination with booking codes: possible. The discount code reduces the price, the booking code applies balance to the remaining amount.`}),`\n`,_jsx(_components.li,{children:`Combination with dynamic pricing: the discount is applied to the dynamically calculated final price.`}),`\n`,_jsx(_components.li,{children:`Toggle “Include add-ons”: if active, the discount applies to the main booking + add-ons. If inactive, only to the main booking.`}),`\n`,_jsx(_components.li,{children:`Distinction from booking codes: balance with a quota, redeemable across several bookings. Discount codes: one-time price reduction per booking.`}),`\n`,_jsx(_components.li,{children:`Distinction from subscription discounts: percentage discount during manual subscription creation in the admin. No code, no self-service.`}),`\n`,_jsx(_components.li,{children:`Known issue: for “booking on request”, the discount code field could be missing in older versions (bug fixed).`}),`\n`,_jsxs(_components.li,{children:[`Risk of confusion for end customers: `,_jsx(_components.strong,{children:`Booking code`}),` vs. checkout `,_jsx(_components.strong,{children:`Voucher code`}),`. Booking code = package balance, voucher code = price reduction (admin feature is still `,_jsx(_components.strong,{children:`Discount codes`}),`).`]}),`\n`,_jsxs(_components.li,{children:[`Since Aug 2026 the public booking page also accepts discount codes in the `,_jsx(_components.strong,{children:`Booking code`}),` field (add + precalculate). Checkout trigger is `,_jsx(_components.strong,{children:`Add voucher code`}),` (no longer Discount code). The `,_jsx(_components.code,{children:`bookingCodeInfo`}),` hint still says voucher codes come later at checkout: UI copy is stale, the article body above is correct.`]}),`\n`]}),`\n`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Discount Codes","sidebarTitle":"Discount Codes","description":"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.","public":true,"href":"/en/discount-codes"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"How does the concept work?","slug":"how-does-the-concept-work","depth":2,"children":[]},{"title":"When do I use this?","slug":"when-do-i-use-this","depth":2,"children":[]},{"title":"Relationship to other features","slug":"relationship-to-other-features","depth":2,"children":[]},{"title":"Settings \u0026 options","slug":"settings-\u0026-options","depth":2,"children":[]},{"title":"Create a discount code","slug":"create-a-discount-code","depth":2,"children":[]},{"title":"Examples","slug":"examples","depth":2,"children":[]},{"title":"FAQ","slug":"faq","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"anny-85c98540","siteName":"anny","title":"Discount Codes - anny","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"de":{"href":"/discount-codes","matchLevel":1},"en":{"href":"/en/discount-codes","matchLevel":0}}},"lastModified":"2026-10-15T15:30:40.805Z","originalFileLocation":"en/discount-codes.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\">\u003cmeta data-mint-head name=\"application-name\" content=\"anny\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Discount Codes - anny\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"anny\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.anny.co/en/discount-codes\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://anny-85c98540.mintlify.app/_mintlify/api/og/v2?division=Subscriptions%2C+Packages+%26+Vouchers\u0026amp;title=Discount+Codes\u0026amp;description=Create+absolute+or+percentage+discount+codes+that+customers+enter+at+checkout+to+get+a+price+reduction+on+their+booking.\u0026amp;theme=624ef238bb99e61a4a526947\u0026amp;signature=03b31c3bc669f024476260d79663890b7386bc9db3d75eb7e219dce7b7d8c617\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Discount Codes - anny\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://anny-85c98540.mintlify.app/_mintlify/api/og/v2?division=Subscriptions%2C+Packages+%26+Vouchers\u0026amp;title=Discount+Codes\u0026amp;description=Create+absolute+or+percentage+discount+codes+that+customers+enter+at+checkout+to+get+a+price+reduction+on+their+booking.\u0026amp;theme=624ef238bb99e61a4a526947\u0026amp;signature=03b31c3bc669f024476260d79663890b7386bc9db3d75eb7e219dce7b7d8c617\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/anny-85c98540/iaQtrTBWt00eE3Px/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"anny\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3c69ef\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.anny.co/en/discount-codes\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/discount-codes.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.anny.co/en/discount-codes\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.anny.co/discount-codes\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.anny.co/discount-codes\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.anny.co/#organization\",\"name\":\"anny\",\"url\":\"https://docs.anny.co\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/anny-85c98540/ijC9sfplIYStpnep/images/anny-lockup-hell-inline.svg?fit=max\u0026auto=format\u0026n=ijC9sfplIYStpnep\u0026q=85\u0026s=7d8ad75aba0be5dcd6f5dacf0edc35b1\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.anny.co#website\",\"name\":\"anny\",\"url\":\"https://docs.anny.co\",\"publisher\":{\"@id\":\"https://docs.anny.co/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.anny.co/en/discount-codes#webpage\",\"url\":\"https://docs.anny.co/en/discount-codes\",\"name\":\"Discount Codes\",\"description\":\"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\",\"dateModified\":\"2026-10-15T15:30:40.805Z\",\"isPartOf\":{\"@id\":\"https://docs.anny.co#website\"},\"breadcrumb\":{\"@id\":\"https://docs.anny.co/en/discount-codes#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.anny.co/en/discount-codes#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Subscriptions, Packages \u0026 Vouchers\",\"item\":\"https://docs.anny.co/en/booking-quotas\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Discount Codes\",\"item\":\"https://docs.anny.co/en/discount-codes\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.anny.co/en/discount-codes#article\",\"headline\":\"Discount Codes\",\"name\":\"Discount Codes\",\"description\":\"Create absolute or percentage discount codes that customers enter at checkout to get a price reduction on their booking.\",\"url\":\"https://docs.anny.co/en/discount-codes\",\"mainEntityOfPage\":{\"@id\":\"https://docs.anny.co/en/discount-codes#webpage\"},\"dateModified\":\"2026-10-15T15:30:40.805Z\",\"publisher\":{\"@id\":\"https://docs.anny.co/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.anny.co#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"anny\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"anny","nav":{"global":null,"languages":[{"language":"de","default":true,"pages":[{"title":"de","href":"/discount-codes"}]},{"language":"en","tabs":[{"tab":"Admin","groups":[{"group":"Getting Started","public":true,"pages":[{"title":"Welcome to anny","sidebarTitle":"Welcome","href":"/en/welcome"},{"title":"Getting Started with anny","sidebarTitle":"Getting Started","href":"/en/getting-started"},{"group":"Use Cases","public":true,"pages":[{"title":"Getting Started – Desk Sharing","sidebarTitle":"Desk Sharing","href":"/en/getting-started-desk-sharing"},{"title":"Getting Started – Universities","sidebarTitle":"Universities","href":"/en/getting-started-universities"},{"title":"Getting Started – Coworking","sidebarTitle":"Coworking","href":"/en/getting-started-coworking"},{"title":"Getting Started – Room Booking","sidebarTitle":"Room Booking","href":"/en/getting-started-room-booking"},{"title":"Getting Started – Courses","sidebarTitle":"Courses","href":"/en/getting-started-courses"},{"title":"Getting Started – Events","sidebarTitle":"Events","href":"/en/getting-started-events"},{"title":"Getting Started – Appointment Scheduling","sidebarTitle":"Appointment Scheduling","href":"/en/getting-started-appointments"},{"title":"Getting Started – Dive Schools","sidebarTitle":"Dive Schools","href":"/en/getting-started-dive-schools"},{"title":"Getting Started – Sailing Schools","sidebarTitle":"Sailing Schools","href":"/en/getting-started-sailing-schools"},{"title":"Getting Started - Visitor Registration","sidebarTitle":"Visitor Registration","href":"/en/visitor-management"},{"title":"Getting Started - Parking Booking","sidebarTitle":"Parking Booking","href":"/en/getting-started-parking"},{"title":"Getting Started - Fleet Management","sidebarTitle":"Fleet Management","href":"/en/getting-started-fleet"},{"title":"Getting Started - Equipment Rental","sidebarTitle":"Equipment Rental","href":"/en/getting-started-equipment-rental"},{"title":"Getting Started - Waiting Area","sidebarTitle":"Waiting Area","href":"/en/getting-started-waiting-area"},{"title":"Getting Started - Memberships","sidebarTitle":"Memberships","href":"/en/getting-started-memberships"}]}]},{"group":"Your Organization","public":true,"pages":[{"group":"Account Settings","public":true,"pages":[{"title":"Account Settings","sidebarTitle":"Account settings","href":"/en/account-settings"},{"title":"Introduction to the Admin Area","sidebarTitle":"Admin Area Introduction","href":"/en/admin-area-intro"},{"title":"Data Privacy \u0026 Deletion Periods","sidebarTitle":"Data Privacy \u0026 Deletion Periods","href":"/en/data-privacy"},{"title":"Master organizations","sidebarTitle":"Master organizations","href":"/en/master-organizations"}]},{"group":"Your anny Contract","public":true,"pages":[{"title":"Manage your anny plan","sidebarTitle":"Manage anny plan","href":"/en/anny-plan"}]},{"group":"Team \u0026 Permissions","public":true,"pages":[{"title":"Manage Admin Users and Roles","sidebarTitle":"Roles \u0026 Permissions","href":"/en/roles-and-permissions"},{"title":"Set admin notifications","sidebarTitle":"Admin notifications","href":"/en/admin-notifications"}]},{"group":"Security \u0026 Login","public":true,"pages":[{"title":"Single Sign-On (SSO) Overview","sidebarTitle":"SSO Overview","href":"/en/sso-overview"},{"title":"Microsoft SAML SSO","sidebarTitle":"Microsoft SAML SSO","href":"/en/microsoft-saml-sso"},{"title":"Google Workspace SSO","sidebarTitle":"Google Workspace SSO","href":"/en/google-workspace-sso"},{"title":"Generic SAML 2.0 SSO","sidebarTitle":"Generic SAML 2.0","href":"/en/generic-saml-sso"},{"title":"OAuth2 SSO","sidebarTitle":"OAuth2 SSO","href":"/en/oauth2-sso"},{"title":"OpenID Connect (OIDC) SSO","sidebarTitle":"OpenID Connect SSO","href":"/en/openid-connect-sso"},{"title":"SCIM (User Provisioning)","sidebarTitle":"SCIM (User Provisioning)","href":"/en/scim-user-provisioning"},{"title":"Federated SAML","sidebarTitle":"Federated SAML","href":"/en/federated-saml"},{"title":"Attribute Mapping","sidebarTitle":"Attribute Mapping","href":"/en/attribute-mapping"},{"title":"Two-Factor Authentication","sidebarTitle":"Two-Factor Authentication","href":"/en/two-factor-authentication"},{"title":"SSO Key Rollover","sidebarTitle":"SSO Key Rollover","href":"/en/sso-key-rollover"}]},{"group":"Booking Page \u0026 Embedding","public":true,"pages":[{"title":"Set Up Your Booking Page Layout","sidebarTitle":"Booking Page Layout","href":"/en/booking-page-layout"},{"title":"Embed the anny Booking Page as a Widget on Your Website","sidebarTitle":"Widget embed","href":"/en/embed-booking-page"},{"title":"Widget Embedding - Advanced","sidebarTitle":"Advanced embedding","href":"/en/widget-embed-advanced"},{"title":"Widget Agent Skill","sidebarTitle":"Widget Agent Skill","href":"/en/widget-agent-skill"},{"title":"Track Bookings with UTM Links","sidebarTitle":"UTM Tracking","href":"/en/utm-tracking"},{"title":"Embed the anny Booking Page in Wix","sidebarTitle":"Wix","href":"/en/embed-wix"},{"title":"Embed the anny Booking Page in Google Sites","sidebarTitle":"Google Sites","href":"/en/embed-google-sites"},{"title":"Embed the anny booking page in WordPress","sidebarTitle":"WordPress","href":"/en/embed-wordpress"}]}]},{"group":"Resources \u0026 Availability","public":true,"pages":[{"group":"General Information","public":true,"pages":[{"title":"Configure a Resource","sidebarTitle":"Configure resources","href":"/en/configure-resources"},{"title":"Groups","sidebarTitle":"Groups","href":"/en/groups-and-categories"},{"title":"Resource status","sidebarTitle":"Resource status","href":"/en/resource-status"}]},{"group":"Schedules","public":true,"pages":[{"title":"Schedules","sidebarTitle":"Schedules","href":"/en/schedules"},{"title":"Available Slots","sidebarTitle":"Available Slots","href":"/en/available-slots"}]},{"group":"Availability Logic","public":true,"pages":[{"title":"Waitlist","sidebarTitle":"Waitlist","href":"/en/waitlist"},{"title":"Exclusive Time Slots","sidebarTitle":"Exclusive Time Slots","href":"/en/exclusive-time-slots"},{"title":"Create and Manage Global Blockers","sidebarTitle":"Global Blockers","href":"/en/global-blockers"},{"title":"Dynamic Capacity Planning with On-Demand Resources","sidebarTitle":"Dynamic Capacity Planning","href":"/en/dynamic-capacity-planning"}]},{"title":"Create Interactive 3D Floor Plans in anny","sidebarTitle":"Maps \u0026 Interactive Floor Plans","href":"/en/maps-and-floor-plans"}]},{"group":"Booking Options \u0026 Services","public":true,"pages":[{"group":"Options \u0026 Services","public":true,"pages":[{"title":"Booking Option","sidebarTitle":"Booking Option","href":"/en/configure-booking-option"},{"title":"Service-First Flow","sidebarTitle":"Service-First Flow","href":"/en/service-first-flow"},{"title":"Combine multiple services","sidebarTitle":"Booking sequences","href":"/en/booking-sequences"},{"title":"Dynamic Pricing","sidebarTitle":"Dynamic Pricing","href":"/en/dynamic-pricing"}]},{"group":"Booking Types","public":true,"pages":[{"title":"About Recurring Bookings","sidebarTitle":"Recurring Bookings","href":"/en/recurring-bookings"},{"title":"Booking Series","sidebarTitle":"Booking Series","href":"/en/booking-series"}]},{"group":"Extensions","public":true,"pages":[{"title":"Smart Availability","sidebarTitle":"Smart Availability","href":"/en/smart-availability"},{"title":"Products \u0026 additional options","sidebarTitle":"Products \u0026 additional options","href":"/en/add-ons"},{"title":"Custom Forms","sidebarTitle":"Custom Forms","href":"/en/custom-forms"},{"title":"Legal Documents","sidebarTitle":"Legal Documents","href":"/en/legal-documents"},{"title":"Participant Management","sidebarTitle":"Participant Management","href":"/en/participant-management"},{"title":"Personalization","sidebarTitle":"Personalization","href":"/en/personalization"},{"title":"Certificates","sidebarTitle":"Certificates","href":"/en/certificates"},{"title":"Minimum and Maximum Selection","sidebarTitle":"Min \u0026 Max Selection","href":"/en/min-max-selection"},{"title":"Service Schedules","sidebarTitle":"Service Schedules","href":"/en/service-schedules"}]},{"group":"Changes \u0026 Cancellation","public":true,"pages":[{"title":"Modify Bookings","sidebarTitle":"Modify Bookings","href":"/en/modify-bookings"},{"title":"Cancellation Policy","sidebarTitle":"Cancellation Policy","href":"/en/cancellation-policy"}]}]},{"group":"Booking Management","public":true,"pages":[{"title":"Plan and manage bookings in the calendar","sidebarTitle":"Calendar","href":"/en/calendar"},{"title":"Booking Rules","sidebarTitle":"Booking Rules","href":"/en/booking-rules"},{"title":"Tags","sidebarTitle":"Tags","href":"/en/tags"},{"title":"Inquiries \u0026 inquiry forms","sidebarTitle":"Inquiries","href":"/en/inquiries"},{"group":"Communication","public":true,"pages":[{"title":"Activity Log","sidebarTitle":"Activity Log","href":"/en/activity-log"},{"title":"Notifications and appointment reminders","sidebarTitle":"Notifications","href":"/en/configure-notifications"},{"title":"Mobile notifications","sidebarTitle":"Mobile notifications","href":"/en/mobile-notifications"},{"title":"Broadcasting","sidebarTitle":"Broadcasting","href":"/en/broadcasting"}]}]},{"group":"CRM","public":true,"pages":[{"title":"Manage Customers","sidebarTitle":"Customers","href":"/en/manage-customers"},{"title":"Manage Companies","sidebarTitle":"Companies","href":"/en/manage-companies"},{"title":"Member Management (Communities)","sidebarTitle":"Member Management (Communities)","href":"/en/communities"}]},{"group":"Payment Processing","public":true,"pages":[{"group":"Online Payment","public":true,"pages":[{"title":"Set Up Stripe Connect","sidebarTitle":"Stripe Connect","href":"/en/stripe-connect-setup"},{"title":"Online Payments \u0026 Fees","sidebarTitle":"Online Payments \u0026 Fees","href":"/en/online-payments"},{"title":"SEPA direct debit for subscriptions","sidebarTitle":"SEPA direct debit","href":"/en/sepa-direct-debit"},{"title":"Manage Your Stripe Connect Profile","sidebarTitle":"Stripe Support","href":"/en/stripe-support"}]},{"group":"POS","public":true,"pages":[{"title":"Set Up Card Readers \u0026 Tap to Pay in the POS App","sidebarTitle":"POS App Setup","href":"/en/pos-app-setup"},{"title":"Manage Bookings and Payments in the POS App","sidebarTitle":"POS App Bookings \u0026 Payments","href":"/en/pos-app-bookings-and-payments"}]}]},{"group":"Invoicing","public":true,"pages":[{"group":"Invoices","public":true,"pages":[{"title":"Invoicing","sidebarTitle":"Invoicing","href":"/en/invoicing"},{"title":"Pay by Invoice (Pay-Later)","sidebarTitle":"Pay by Invoice","href":"/en/pay-later"},{"title":"Edit and Finalize Invoice Drafts","sidebarTitle":"Invoice draft","href":"/en/invoice-drafts"},{"title":"Correct or Cancel an Invoice","sidebarTitle":"Correct invoice","href":"/en/invoice-corrections"},{"title":"Customer Balances \u0026 Collective Invoices","sidebarTitle":"Customer balances","href":"/en/customer-balances-and-collective-invoices"}]},{"group":"Accounting","public":true,"pages":[{"title":"Accounting with anny","sidebarTitle":"Accounting","href":"/en/accounting"},{"title":"Forward invoices to DATEV","sidebarTitle":"Invoice forwarding","href":"/en/datev-import"}]}]},{"group":"Subscriptions, Packages \u0026 Vouchers","public":true,"pages":[{"title":"Booking Quotas","sidebarTitle":"Booking Quotas","href":"/en/booking-quotas"},{"title":"Subscriptions \u0026 Memberships","sidebarTitle":"Subscriptions \u0026 Memberships","href":"/en/subscriptions-and-memberships"},{"group":"Booking Packages","public":true,"pages":[{"title":"Booking Packages \u0026 Codes","sidebarTitle":"Booking Packages","href":"/en/booking-codes"},{"title":"Value Vouchers","sidebarTitle":"Value Vouchers","href":"/en/value-vouchers"},{"title":"Vouchers \u0026 VAT","sidebarTitle":"Vouchers \u0026 VAT","description":"When a voucher counts as a single-purpose or multi-purpose voucher for tax purposes, how anny handles value vouchers, and what your tax advisor needs for it.","href":"/en/voucher-taxation"}]},{"title":"Discount Codes","sidebarTitle":"Discount Codes","href":"/en/discount-codes"}]},{"group":"Check-In","public":true,"pages":[{"title":"Check-In \u0026 Check-Out","sidebarTitle":"General Information","description":"Control entry via QR code, manage capacities in real time, and ask for forms only at check-in.","href":"/en/check-in-overview"},{"title":"Presence in booking details","sidebarTitle":"Booking details","href":"/en/check-in-booking-details"},{"group":"Check-In Terminal","public":true,"pages":[{"title":"Set Up a Check-In Terminal","sidebarTitle":"Setup","href":"/en/check-in-setup"},{"title":"Getting Started – University Library (Check-In)","sidebarTitle":"University Library","href":"/en/check-in-university"},{"title":"Getting Started – Ticketing \u0026 Events (Check-In)","sidebarTitle":"Ticketing \u0026 Events","href":"/en/check-in-ticketing-events"}]},{"group":"Customer display","public":true,"hidden":true,"pages":[{"title":"Customer display","sidebarTitle":"Customer display","href":"/en/customer-display"}]},{"group":"Quick Access","public":true,"pages":[{"title":"Queuing System","sidebarTitle":"Queues","href":"/en/queuing-system"}]}]},{"group":"Analytics \u0026 Data","public":true,"pages":[{"title":"Dashboards","sidebarTitle":"Dashboards","href":"/en/dashboards"},{"title":"(Automatic) Exports","sidebarTitle":"Exports","href":"/en/automatic-exports"}]},{"group":"Displays \u0026 Terminals","public":true,"pages":[{"group":"Display App","public":true,"pages":[{"title":"anny Display App","sidebarTitle":"Display App","href":"/en/display-app"},{"title":"Connect tapirx with anny","sidebarTitle":"tapirx","href":"/en/tapirx-setup"},{"title":"Connect Joan with anny","sidebarTitle":"Joan","href":"/en/joan-setup"},{"title":"Install the anny Display App on the Philips 10BDL4551T","sidebarTitle":"Philips","href":"/en/philips-setup"}]},{"title":"URL Display Boards","sidebarTitle":"URL Display Boards","href":"/en/url-display-boards"}]},{"group":"Integrations","public":true,"pages":[{"group":"Calendar Sync","public":true,"pages":[{"title":"Calendar integrations","sidebarTitle":"Calendar integrations","href":"/en/calendar-integrations"},{"group":"Personal Calendars","public":true,"pages":[{"title":"Connect Outlook Calendar with anny","sidebarTitle":"Outlook","href":"/en/outlook"},{"title":"Connect Google Calendar with anny","sidebarTitle":"Google","href":"/en/google"},{"title":"Connect ICS Calendar with anny","sidebarTitle":"ICS Calendar","href":"/en/ics-calendar"}]},{"group":"Workspace","public":true,"pages":[{"title":"Connect Microsoft 365 with anny","sidebarTitle":"Microsoft 365","href":"/en/m365-workspace"},{"title":"Connect Google Workspace with anny","sidebarTitle":"Google Workspace","href":"/en/google-workspace"}]}]},{"group":"Microsoft Apps","public":true,"pages":[{"title":"Connect the Outlook Add-In with anny","sidebarTitle":"Outlook Add-In","href":"/en/outlook-add-in"},{"title":"anny MS Teams App","sidebarTitle":"MS Teams App","href":"/en/ms-teams-app"}]},{"group":"Video Meetings","public":true,"pages":[{"title":"anny Video Calls","sidebarTitle":"anny Video Calls","href":"/en/anny-video-calls"},{"title":"Connect Zoom with anny","sidebarTitle":"Zoom","href":"/en/zoom"},{"title":"Connect Microsoft Teams with anny","sidebarTitle":"Microsoft Teams","href":"/en/ms-teams"},{"title":"Connect Purpleview with anny","sidebarTitle":"Purpleview","href":"/en/purpleview"}]},{"group":"HR","public":true,"pages":[{"title":"Connect Personio with anny","sidebarTitle":"Personio","href":"/en/personio"},{"title":"Connect HRworks with anny","sidebarTitle":"HRworks","href":"/en/hrworks"}]},{"group":"CRM","public":true,"pages":[{"title":"Connect HubSpot with anny","sidebarTitle":"HubSpot","href":"/en/hubspot"}]},{"group":"Marketing \u0026 Tracking","public":true,"pages":[{"title":"Connect Google Analytics \u0026 Google Ads with anny","sidebarTitle":"Google Analytics \u0026 Google Ads","href":"/en/google-analytics"},{"title":"Connect LinkedIn Ads with anny","sidebarTitle":"LinkedIn Ads","href":"/en/linkedin-ads-tracking"},{"title":"Connect TikTok Ads with anny","sidebarTitle":"TikTok Ads","href":"/en/tiktok-ads-tracking"},{"title":"Connect Meta Ads with anny","sidebarTitle":"Meta Ads","href":"/en/meta-ads-tracking"}]},{"group":"Access \u0026 Smart Locks","public":true,"pages":[{"title":"Smart Lock Integrations","sidebarTitle":"Smart Locks Overview","href":"/en/smart-locks-overview"},{"title":"Connect KleverKey with anny","sidebarTitle":"KleverKey","href":"/en/klever-key"},{"title":"Connect SALTO KS with anny","sidebarTitle":"SALTO KS","href":"/en/salto-ks"},{"title":"Connect Nuki with anny","sidebarTitle":"Nuki","href":"/en/nuki"},{"group":"Dormakaba","public":true,"pages":[{"title":"Connect dormakaba Exos 9300 with anny","sidebarTitle":"dormakaba Exos 9300","href":"/en/dormakaba-exos-9300"},{"title":"Connect dormakaba resivo with anny","sidebarTitle":"Resivo","href":"/en/dormakaba-resivo"},{"title":"Connect dormakaba exivo with anny","sidebarTitle":"dormakaba exivo","href":"/en/dormakaba-exivo"}]},{"title":"Connect UniFi with anny","sidebarTitle":"UniFi","href":"/en/unifi"},{"title":"Connect Keycafe with anny","sidebarTitle":"Keycafe","href":"/en/keycafe"},{"title":"Connect EVVA AirKey with anny","sidebarTitle":"EVVA AirKey","href":"/en/evva-airkey"},{"title":"Connect Tapkey with anny","sidebarTitle":"Tapkey","href":"/en/tapkey"},{"title":"Connect Glutz eAccess with anny","sidebarTitle":"Glutz eAccess","href":"/en/glutz-eaccess"},{"title":"Connect Custom Remote Open with anny","sidebarTitle":"Custom Remote Open","href":"/en/custom-remote-open"},{"title":"Connect Comydo with anny","sidebarTitle":"Comydo","href":"/en/comydo"},{"title":"Connect Arivo with anny","sidebarTitle":"Arivo","href":"/en/arivo"}]},{"group":"Partner \u0026 Booking Channels","public":true,"pages":[{"title":"Connect Urban Sports Club with anny","sidebarTitle":"Urban Sports Club","href":"/en/urban-sports-club"},{"title":"Connect Treatwell with anny","sidebarTitle":"Treatwell","href":"/en/treatwell"},{"title":"Connect ClassPass with anny","sidebarTitle":"ClassPass","href":"/en/class-pass"}]},{"group":"Identity \u0026 Compliance","public":true,"pages":[{"title":"Set Up Microsoft Enterprise SSO on iOS","sidebarTitle":"Enterprise SSO (iOS)","icon":"shield-check","href":"/en/enterprise-sso-ios"},{"title":"Connect Regpit with anny","sidebarTitle":"Regpit","href":"/en/regpit-integration"}]},{"group":"Automation","public":true,"pages":[{"title":"Connect Make.com with anny","sidebarTitle":"make.com","href":"/en/make-com"},{"title":"Connect n8n with anny","sidebarTitle":"n8n","href":"/en/n8n"}]},{"group":"IoT","public":true,"pages":[{"title":"Connect Shelly with anny","sidebarTitle":"Shelly","href":"/en/shelly"}]},{"group":"Accounting","public":true,"pages":[{"title":"Connect DATEV with anny","sidebarTitle":"DATEV","href":"/en/datev-integration"},{"title":"DATEV accounts and preparation with your tax advisor","sidebarTitle":"Accounts \u0026 tax advisor","icon":"calculator","href":"/en/datev-accounts-and-tax-advisor"}]}]},{"group":"Reference","public":true,"pages":[{"title":"FAQ","sidebarTitle":"FAQ","href":"/en/faq"},{"title":"anny Glossary","sidebarTitle":"Glossary","href":"/en/anny-glossary"},{"title":"Support Policy","sidebarTitle":"Support Policy","href":"/en/support-policy"},{"title":"Accessibility at anny","sidebarTitle":"Accessibility","href":"/en/accessibility"},{"title":"GoBD at anny","sidebarTitle":"GoBD","icon":{"style":"regular","name":"scale-balanced","library":"fontawesome"},"href":"/en/gobd"},{"title":"Privacy Policy","sidebarTitle":"Privacy Policy","href":"/en/privacy-policy"}]},{"group":"Testzentren","public":true,"icon":"vial","hidden":true,"pages":[{"title":"Evaluating booking data from anny","sidebarTitle":"Booking data","href":"/en/test-center-booking-data"}]},{"group":"Announcements","public":true,"icon":"bullhorn","hidden":true,"pages":[{"title":"Admin 3.0: What changes","sidebarTitle":"Admin 3.0","href":"/en/admin-3-0"},{"title":"New email design from 8 September 2026","sidebarTitle":"New email design","href":"/en/email-design-september-2026"}]},{"group":"Technical notes","public":true,"icon":"wrench","hidden":true,"pages":[{"title":"Limit Microsoft 365 calendar access to specific mailboxes","sidebarTitle":"Limit M365 calendar access","href":"/en/m365-resource-calendar-scope"}]}]},{"tab":"End Users","pages":[{"title":"End Users","href":"/en/booking-page-overview"}]},{"tab":"anny Apps","pages":[{"title":"anny Apps","href":"/en/anny-apps-overview"}]},{"tab":"anny AI","pages":[{"title":"anny AI","href":"/en/anny-agent"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/2026"}]}]}]},"basePath":"","title":"Discount Codes - anny","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":[],"chunks":[]}