Skip to content

Gift Vouchers

Sell vouchers online and at the front desk, redeem them at the appointment, and see what is still open

Open Vouchers in the sidebar. The page is headed Gift vouchers and has three tabs: Sold for everyday work, Offer for what guests can buy, and Legal for the texts that online sales require. Only you see the last two.

Every voucher is worth an amount of money, never a particular treatment. A guest buys 60 euros, not “a 60-minute massage”. If you raise your prices next spring, the guest pays the difference, and you do not owe an hour at last year’s price. A label on a tile such as “60 min Thai oil massage” changes nothing about this. The voucher can be used for anything you offer.

A voucher is valid for three years, until 31 December of the third year after purchase. One bought in October 2026 runs until 31 December 2029. That is the regular limitation period under German law (§§ 195 and 199 BGB), and a shorter one would not hold. The panel therefore has no setting for it.

Part of a voucher can be used. Someone with 60 euros who has a 45-euro treatment keeps 15 on the code and can come back.

  1. They open your voucher page: your booking address followed by /gutschein, for example your-site.example/book/gutschein. The address ending in /voucher opens the same page.
  2. The page is called “Buy a gift voucher”, below it “Give an amount of your choice.” They tap an amount. If you allow custom amounts (24.4), there is also an “Other amount” tile with the field Your amount. Without custom amounts the line under the heading reads “Choose a voucher.”
  3. They fill in Your name and Your email. Who is it for? (optional) and Personal note (optional) are optional. Without a name the page says “Please enter your name.”, with a wrong address “Please enter a valid email address.” and with an amount outside your limits “Please choose a valid amount.” With a service fee (24.4), a summary shows what they pay: Voucher value, Service fee and Total price.
  4. “Continue to payment” takes them to Stripe’s payment page. Guests can pay by card there, and with Apple Pay, Google Pay or Klarna if those are switched on in your Stripe account.
  5. Back on your page it says “Thank you!” and “Your voucher is on its way by email.”, with the code, the value, “Valid until …” and the “Print voucher” link, with invoices also “View invoice” (24.5). Seconds after paying, the voucher also arrives by email, with the code and the same button.

If they cancel on the payment page, they see “Payment cancelled” with “Nothing was charged.” and the button “Back to the voucher”.

The printed sheet is the actual present: your design and “Gift voucher” at the top, then “For” and the recipient’s name, the amount, the code, “Valid until …” and a QR code marked “Book online” that opens your booking page. Once part of it has been redeemed, it shows “Current balance:” with what is left, so the recipient sees after a first visit what remains. If the code in the address is wrong, the sheet says “This voucher does not exist”.

You do nothing during all this. Nobody has to make up a code, write an email or keep a list.

From the first voucher on, three figures sit above the list. Only you see them.

Figure What it tells you
Sold The face value of every voucher sold or entered. A cancelled or refunded voucher only counts with the part that had already been redeemed. Expired ones count in full.
Still open What guests can still redeem. This is not income, it is treatments you still owe.
Vouchers How many there are, in every state.

For your bookkeeping, use the monthly export below the list, not the Sold figure.

The list has the columns Code, Value, Balance, Bought by, Valid until and Status. Search by code, name or email address. The status filter narrows the list to Redeemable, Used up, Expired or Cancelled vouchers. Vouchers sold at the front desk carry the tag in person. Besides the four states, Status can also read Open while the payment of an online purchase is not confirmed yet.

Tap a code to open the voucher. You see value, balance and Valid until, the recipient and greeting if the buyer wrote one, and under Redemptions every redemption with date, amount and who entered it. Before the first one it says “Nothing redeemed yet.” For online purchases you also see what the buyer paid, service fee included, and a link to the Invoice if you issue one (24.5).

Someone pays cash at the counter. Press “Add voucher” and fill in Value and Bought by, if you like also Email (optional). After Create the panel reports “Created:” with the new code. Add an email address and tick “Send the voucher by email”, and the buyer gets the same email as an online purchase.

There are two ways, and both end in the same place.

  • The guest gave the code when booking. Where vouchers are on, the last step of the booking form has the field Gift voucher code, and “Check” shows the guest the balance. If something is wrong, they read “We do not know this code. Please check the spelling.”, “This voucher has already been fully redeemed.”, “This voucher has expired.”, “This voucher was cancelled.” or “This voucher has not been paid for yet.” The code then appears on the booking under Gift voucher, with the balance and a Redeem button. Nothing is deducted at booking time. A guest who does not turn up keeps the full voucher.
  • The guest brings the code along. Find it in the list and press Redeem, right next to the code.

Either way the panel asks “Which amount is deducted?” and names the balance. From the list it suggests the full balance, from a booking the price of the treatment, at most the balance. Type a lower number if you deduct less, then confirm. The rest stays on the voucher, and the panel reports “Redeemed.” If it cannot, it says why: “Please enter a valid amount.”, “That is more than the remaining balance.”, “This voucher has expired.”, “This voucher is already used up.” or “This voucher was cancelled.”

In the booking form the guest takes an entered code out again with Remove.

If the guest cannot find the email, open the voucher and press “Send email again”. It goes to the address the voucher was bought with, and the panel reports “Email sent.”, or “The email did not go out.” if it failed. The button only appears when there is an address.

“Cancel voucher” makes it unusable. It stays in the list, because a voucher is money and every step has to remain traceable. Cancelling pays nothing back. For a refund of an online purchase, use Refund (24.6).

Below the list, next to “For bookkeeping:”, pick a month and press “Sales as spreadsheet”. Without a month the panel says “Please pick a month.” You get one row for every voucher paid that month, with the columns Sold on, Code, Amount, Service fee, Total paid, Currency, Balance, Status, Buyer, E-mail, Channel (online or in store), Payment, Stripe reference, Valid until and Invoice. Send this file to your accountant every month. Like the export under Reports, it follows the main language of your booking page, with separators and amounts as described in Chapter 8.4.

On the left, on the What you offer card, you set what guests can buy. On the right, under “How it arrives”, you see the voucher email filled with a made-up voucher. Switch to Printable sheet and look at that first: it is the part the recipient holds in their hand. “Reload” rebuilds the preview.

Changes are not saved on their own. As soon as something differs from the saved state, a bar “Not saved yet” with Discard and Save appears. The preview shows new amounts and designs after saving.

At the top it says “Sales are running”. “Pause sales” works immediately, without saving. The panel reports “Sales are paused.”, and the top then reads “Sales are paused”. Guests then see a notice instead of the tiles: “We are not selling vouchers online at the moment. Please ask us directly.” While sales are paused, “Change the notice for guests” opens exactly that text in Texts, for example to add that vouchers are still available at the counter. Vouchers already sold stay valid and can be redeemed. “Resume sales” opens the shop again, and the panel reports “Sales are running again.”

Each row is one tile on the voucher page: an amount and an optional Label that tells the guest what it covers, for example “60 min Thai oil massage” under 55. “+ Amount” adds a row, the × at the end of a row removes it. You can offer up to 16 amounts. With no amount at all the panel does not save and reports “At least one amount is required.”

This option only appears for venues that sell in euros. Stripe charges a fee on every online payment, and under “Service fee for online purchases” you decide who carries it:

Option What the guest pays
None, I cover the payment fee The face value. Stripe’s fee comes out of your payout.
Covers every card (3.15% + €0.25) The value plus a fee that covers even the most expensive card.
Covers a standard European card (1.5% + €0.25) The value plus a fee that covers a normal European card.

With Covers every card, a 55-euro voucher costs the guest 57.05 euros. The panel lists these final prices for each of your amounts. The fee is one amount for every payment method, because German law does not allow a surcharge for card payments (§ 270a BGB). Guests see the final price on the tile, and Stripe’s payment page shows value and fee on separate lines.

Under “Designs for voucher and email” you keep up to eight pictures, each with a name. “+ Design” adds one: a JPEG, PNG or WebP in landscape format, about 3:1. Tap a design to make it active. That one appears at the top of the printed sheet and of the email. So “Christmas” can be ready in November, you tap it on 1 December and tap back to “Standard” in January, without uploading anything again. If a file is unsuitable, the panel reports “This image cannot be used.” The × on a design (Remove design) asks “Remove this design from the gallery?”. Without a design the voucher stays plain, and that is fine.

“Maximum vouchers open at the same time” caps how many unredeemed vouchers may exist at once. Next to the field you see how many are open right now. Once the cap is reached, the voucher page tells guests that vouchers are sold out, and it reopens by itself as vouchers get redeemed. 0 means no limit.

With “Allow a custom amount” guests may type their own amount. Only then do Minimum and Maximum appear, and they apply to that typed amount only, not to your tiles.

The card is called Legal for online sales. Selling online to consumers in the EU comes with three duties: tell buyers about their right of withdrawal before they pay, send that text with the voucher email, and offer a withdrawal function. The system does all three with the texts you keep here. Have them checked once by your lawyer.

Setting What it does
Apply EU consumer law (14-day right of withdrawal) On by default for venues that sell in euros. Switch it off only if your venue is outside the EU.
Business address Goes into the withdrawal instructions, the model withdrawal form and the invoice.
Invoice for buyers No invoice, With 19% VAT or As a small business, without VAT (§ 19 UStG). Your tax adviser knows which one applies to you.
Owner or company Appears once invoices are on and is printed under the business name. For a sole proprietor, enter the full name as in your legal notice.
Instructions on withdrawal Folded away, with template or own text next to it. Without your own text, the template based on the official German model applies, with your name and address filled in. Unfolded it then says “The template based on the official model applies.”, otherwise “Your own text is stored.” “Insert template” puts it into the field so you can edit it.
Terms and conditions (optional) Folded away, with none or own text next to it. Leave it empty if you have none. With text, they appear as a link on the voucher page and in full in the voucher email.

Invoices are issued automatically for vouchers paid online, up to 250 euros including the service fee. That is the limit for a simplified invoice (§ 33 UStDV). Above it, an invoice needs the buyer’s name and address, which the voucher page does not ask for, so please issue those yourself. Without a business address there is no invoice at all, and the panel warns you in red.

The invoice is a page to print: Invoice, Invoice date and Reference, below them, in the Description column, “Gift voucher worth …” with its Amount, and the Total, depending on the setting with the VAT it contains or the sentence on § 19 UStG, and “Paid on …”. “Print or save as PDF” prints it. After a refund it carries the line “This purchase has been refunded.” If the link leads nowhere, the page says “Invoice not found”.

At the bottom, after “Withdrawal function for your guests:”, you find the address of your withdrawal page, for example your-site.example/book/widerruf. The voucher page links to it at the bottom with “Withdraw from contract”, as German law has required since 19 June 2026 (§ 356a BGB).

A guest who wants to withdraw fills in Your name, Your e-mail address and, if they have it, the Voucher code on the withdrawal page, optionally also Message (optional). They press “Withdraw from contract”, see their details on the “Please check” page, without a code with “no code given”, and press “Confirm withdrawal”. The “Withdrawal received” page names date and time, and they receive a confirmation by email straight away. Without a name the page says “Please enter your name.”, with a wrong address “Please enter a valid e-mail address.”, with a mistyped code “The code does not look right.” and with a message over 1,000 characters “The message is too long.” After too many attempts it says “Too many attempts. Please try again in an hour.” You get an email as well, and the voucher shows a Withdrawal tag in the list, highlighted until it is settled.

You then have 14 days to pay the money back, using the same means of payment the guest used (§ 357 BGB). Press Refund next to the voucher. Stripe pays back the remaining balance plus the matching share of any service fee, and the voucher is cancelled. The panel shows the exact amount before you confirm, and the step cannot be undone.

Only you see Refund, and only on vouchers that were paid online and are not cancelled. It also works without a withdrawal, as a goodwill gesture. If there is no balance left, the panel reports “No remaining balance, nothing to refund.” If Stripe refuses the refund, the panel says so; check your Stripe dashboard in that case.

A voucher sold at the front desk cannot be refunded here. Pay the money back at the counter and then cancel the voucher.

Your team sees no vouchers until you allow it. In Team, switch on “Show vouchers” (Chapter 21). From their next login, team members see the list with code and balance. They can redeem, enter vouchers sold at the counter and cancel. The figures, the export, the Offer and Legal tabs and Refund stay with you.

Every text guests read on the voucher page, on the printed sheet, in the voucher email and on the withdrawal page can be changed in Texts (Chapter 15). It is sorted into three groups of its own: Vouchers (shop page and print), E-mail: voucher and Withdrawal and legal.