🚀 Quickstart
In weniger als 10 Minuten haben Sie Ihren ersten Flowtifyy-Shop live. Folgen Sie diesen Schritten:
Konto erstellen: Besuchen Sie flowtifyy.com/register und registrieren Sie sich mit Ihrer E-Mail-Adresse. Bestätigen Sie die Bestätigungs-E-Mail.
Shop anlegen: Nach dem Login gelangen Sie zu «Meine Shops». Klicken Sie auf Neuen Shop erstellen, vergeben Sie einen Namen und eine Shop-URL (z. B. meinshop).
Ersten Artikel hinzufügen: Im Adminbereich → Produkte → Neues Produkt. Titel, Preis, Bild und Beschreibung eingeben, speichern.
In Webflow einbetten: Kopieren Sie den iFrame-Code unter Einstellungen → Integration in Ihre Webflow-Seite. Fertig — Ihr Shop ist live!
💡
Die Shop-URL ist fix und bildet den Pfad zum Shop. Wählen Sie sie einmalig sorgfältig — sie kann nicht geändert werden.
⚙️ Shop einrichten
Unter Einstellungen im Adminbereich können Sie Ihren Shop vollständig anpassen:
Allgemein
- Shop-Name: Erscheint im Shop-Header und in E-Mails.
- Sprache / Währung: Aktuell CHF und EUR unterstützt.
- Logo: Upload als PNG/SVG, wird im Shop-Header angezeigt.
- Farben & Schriften: Primärfarbe, Textfarbe, Hintergrund, Schriftquelle (Google Fonts oder Webflow-Vererbung).
Custom Domain Basic+
- Tragen Sie Ihre Wunsch-Domain ein (z. B.
shop.ihrefirma.ch).
- Richten Sie einen CNAME-Eintrag auf
app.flowtifyy.com ein.
- Das SSL-Zertifikat wird automatisch ausgestellt (Let's Encrypt).
E-Mail-Einstellungen
- Absendername und Betreff der Bestellbestätigungs-E-Mails anpassen.
- Rechtliche Angaben im E-Mail-Footer (gesetzlich verpflichtend in der Schweiz).
- Optionale Kopie jeder Bestellbestätigung an eigene E-Mail.
ℹ️
Bestellbestätigungs-E-Mails werden immer von noreply@flowtifyy.com versendet. Der Antwortempfänger («Reply-To») wird auf Ihre Shop-E-Mail gesetzt.
📦 Artikel
Artikel erstellen
Gehen Sie zu Produkte → Neues Produkt. Füllen Sie folgende Felder aus:
| Feld | Beschreibung |
| Name | Pflichtfeld. Erscheint im Shop und in Bestellbestätigungen. |
| Preis | Bruttopreis inkl. MwSt (wenn aktiviert). |
| Beschreibung | Formatierter Text, unterstützt Markdown. |
| Hauptbild | Wird im Warenkorb-Widget und in der Produktkarte angezeigt. JPEG/PNG/WebP/AVIF, max. 10 MB. Wenn AVIF aktiviert ist, wird das Bild automatisch optimiert. |
| Weitere Bilder | Bildergalerie in der Produktdetailansicht. |
| Lagerbestand | Optional. Bei 0 wird der Artikel als «Ausverkauft» angezeigt. |
| Status | Aktiv / Entwurf / Inaktiv. Nur aktive Artikel erscheinen im Shop. |
| Übersetzungen | Name und Beschreibung in DE / FR / IT / EN pflegbar. |
Artikel deaktivieren
Setzen Sie den Status auf Inaktiv oder löschen Sie den Artikel. Artikel in bestehenden Bestellungen bleiben erhalten.
⚠️
Beim Downgrade auf den Free-Plan werden Artikel über dem Limit (10 Produkte) automatisch deaktiviert — nicht gelöscht.
💾 Digitale Produkte
Flowtifyy unterstützt neben physischen Waren auch digitale Produkte — zum Beispiel E-Books, Vorlagen, PDFs, Audio-Dateien oder Software-Lizenzen. Der Fokus der Plattform liegt auf dem klassischen Warenhandel; digitale Produkte ergänzen Ihr Sortiment als praktische Option.
ℹ️
Beim Erstellen oder Bearbeiten eines Artikels wählen Sie unter Produkttyp die Option Digitales Produkt. Alle anderen Felder (Name, Preis, Bilder, Varianten) bleiben identisch mit physischen Artikeln.
Liefermethoden
Sie wählen pro Produkt, wie der digitale Inhalt nach dem Kauf bereitgestellt wird:
| Methode | Beschreibung |
| Datei-Upload | Laden Sie eine oder mehrere Dateien direkt in Flowtifyy hoch (max. 100 MB pro Datei). Nach der Bestellung erhält der Käufer per E-Mail einen gesicherten, zeitlich begrenzten Download-Link. |
| Externer Link | Hinterlegen Sie eine externe URL (z. B. Google Drive, Dropbox oder eigener Server). Der Link wird dem Käufer erst nach erfolgreicher Bezahlung mitgeteilt. |
| Lizenzschlüssel-Pool | Laden Sie eine Liste mit Lizenzschlüsseln hoch. Bei jeder Bestellung wird automatisch ein eindeutiger Schlüssel zugeteilt und per E-Mail verschickt. |
Zugangslimits & Ablauf
- Max. Downloads: Wie oft ein Käufer den Download-Link nutzen darf (0 = unbegrenzt).
- Gültigkeitsdauer: Wie viele Tage der Link aktiv ist (0 = kein Ablauf).
Dateigrössen-Limits nach Plan
| Plan | Anzahl Dateien pro Produkt |
| Free / Starter / Basic | 1 Datei |
| Pro | 3 Dateien |
| Unlimited | 20 Dateien |
Varianten mit digitalem Inhalt
Jede Variante eines digitalen Produkts kann einen eigenen Datei-Upload oder Lizenzschlüssel-Pool besitzen — ideal für unterschiedliche Editionen (z. B. «Standard» vs. «Pro-Version») desselben Produkts.
💡
Digitale Produkte haben keinen Lagerbestand. Die Bestandsverwaltung entfällt; Bestellungen werden sofort nach Zahlungseingang automatisch abgewickelt.
⚡ AVIF-Bildoptimierung
AVIF ist ein modernes Bildformat, das Fotos bei gleicher Qualität bis zu 50 % kleiner als JPEG oder WebP macht. Kleinere Bilder laden schneller, verbessern Ihre Core Web Vitals und steigern die Konversionsrate im Shop.
Aktivierung
Gehen Sie zu Einstellungen → Design.
Aktivieren Sie den Schalter «AVIF (Fotos konvertieren)». Speichern Sie die Einstellungen.
Ab sofort wird jedes neu hochgeladene Produktfoto automatisch in AVIF konvertiert — kein manueller Schritt nötig.
Bestehende Fotos konvertieren
Fotos die vor der Aktivierung hochgeladen wurden, bleiben im Originalformat. Um alle bestehenden Produktfotos auf einmal zu konvertieren:
Klicken Sie in Einstellungen → Design auf «Jetzt konvertieren».
Flowtifyy konvertiert alle Produktfotos im Hintergrund und zeigt am Ende an, wie viele Fotos umgewandelt wurden.
Bilder die bereits im AVIF-Format vorliegen, SVGs und GIFs werden automatisch übersprungen.
Kompatibilität
AVIF wird von allen modernen Browsern unterstützt (Chrome, Firefox, Safari ab 16, Edge). Auf älteren Browsern liefert der Server das Originalbild als Fallback.
💡
Die Konvertierung läuft serverseitig mit 80 % Qualität — für Produktfotos visuell nicht von lossless zu unterscheiden, aber deutlich kleiner. SVG- und GIF-Dateien werden nicht konvertiert und bleiben im Originalformat.
🗂️ Kategorien
Kategorien strukturieren Ihren Shop und ermöglichen Kunden die gezielte Filterung. Gehen Sie zu Kategorien → Neue Kategorie.
- Jede Kategorie erhält einen Namen (mehrsprachig) und ein optionales Bild.
- Produkte können einer oder mehreren Kategorien zugeordnet werden.
- Im Shop erscheinen Kategorien als Tabs oder Filterkacheln.
- Reihenfolge ist per Drag-and-drop anpassbar.
🛒 Bestellungen
Alle Bestellungen erscheinen unter Bestellungen in Echtzeit.
Bestellstatus
| Status | Bedeutung |
| Neu | Bestellung eingegangen, noch nicht bearbeitet. |
| In Bearbeitung | Manuell gesetzt, wenn die Bestellung vorbereitet wird. |
| Versendet | Artikel verschickt oder bereitgestellt. |
| Abgeschlossen | Lieferung bestätigt, Bestellung abgeschlossen. |
| Storniert | Bestellung wurde storniert. |
Bestelldetail
Klicken Sie auf eine Bestellung, um alle Angaben zu sehen: Kundendaten, Artikel, Gesamtbetrag, Zahlungsmethode, Versandadresse und Zeitstempel. Von hier können Sie auch den Status ändern oder eine Bestellbestätigung erneut senden.
Export
Bestellungen können als CSV exportiert werden (Filter nach Datum und Status möglich).
💳 Zahlungsmethoden
Unter Einstellungen → Zahlungsmethoden aktivieren und konfigurieren Sie die gewünschten Methoden.
| Methode | Plan | Bemerkung |
| Vorauskasse | Free+ | Kunde überweist vor Versand. Bankdaten erscheinen in der Bestellbestätigung. |
| Rechnung | Free+ | Zahlung nach Erhalt. Optional einschränkbar auf bekannte Kunden. |
| TWINT Zahlungslink | Free+ | Statischer TWINT-Zahlungslink. Kund:in bezahlt manuell den angezeigten Betrag. |
| TWINT Dynamisch (Payrexx) | Pro+ | Betragsgenauer QR pro Bestellung via Payrexx. Automatische Zahlungsbestätigung. |
| Kreditkarte (Payrexx) | Pro+ | Visa/MC via Payrexx. |
| Kreditkarte (Stripe) | Pro+ | Visa/MC via Stripe. |
| PayPal | Pro+ | Via Payrexx-Integration. |
Rechnung-Einschränkung
Sie können die Zahlungsmethode «Rechnung» auf bekannte Kunden beschränken. Im Adminbereich können Sie Kund:innen explizit für Rechnungskauf freischalten.
🟡 TWINT einrichten
TWINT Zahlungslink (Free+)
Kopieren Sie den generierten Zahlungslink.
Tragen Sie den Link unter Einstellungen → Zahlungsmethoden → TWINT → Zahlungslink ein.
⚠️
Mit dem statischen Zahlungslink muss der Betrag vom Kunden manuell eingegeben werden. Eine automatische Bestätigung ist nicht möglich — der Status muss manuell auf «Bezahlt» gesetzt werden.
Dynamischer TWINT (Payrexx) Pro+
Verbinden Sie Ihren Payrexx-Account unter Einstellungen → Payrexx. Jede Bestellung erhält einen einzigartigen QR-Code mit dem genauen Bestellbetrag. Die Zahlung wird automatisch bestätigt.
ℹ️
TWINT ist nur für Bestellungen mit Schweizer Lieferadresse verfügbar.
🔗 Webflow iFrame-Integration
Der einfachste Weg: Betten Sie Ihren Shop direkt als iFrame in Ihre Webflow-Seite ein.
Einbettungs-Code holen
Im Adminbereich: Einstellungen → Integration → iFrame-Code.
Kopieren Sie den angezeigten HTML-Code.
Fügen Sie ihn in Webflow als Embed-Block ein (Webflow CMS-Plan oder höher erforderlich).
Eigene «In den Warenkorb»-Schaltflächen
Sie können beliebige Elemente auf Ihrer Webflow-Seite als «In den Warenkorb»-Button nutzen:
<button data-fi-slug="SHOP-SLUG" data-fi-product="PRODUKT-SLUG">In den Warenkorb</button>
<script src="https://app.flowtifyy.com/widget/embed.js?slug=SHOP-SLUG"></script>
Ersetzen Sie SHOP-SLUG durch Ihre Shop-URL und PRODUKT-SLUG durch den Artikel-Slug.
ℹ️
Den Produkt-Slug finden Sie in der Produktliste (Spalte «Slug» oder in der Adresszeile beim Bearbeiten).
🔒 Domain-Beschränkung
Unter Einstellungen → Einbettung legen Sie fest, auf welchen Domains Ihr Shop eingebettet werden darf. Das schützt Sie davor, dass der Shop unerlaubt auf fremden Websites eingebunden wird.
| Feld | Beispiel | Plan |
| Webflow Staging-Domain | https://ihr-shop.webflow.io | Free+ |
| Custom Domain (Live-Website) | https://www.ihre-website.ch | Basic+ |
Sobald eine Domain eingetragen ist, wird der Shop ausschliesslich auf dieser Domain angezeigt. Versucht jemand, den Shop auf einer anderen Website einzubetten, erscheint stattdessen eine Sperrmeldung. Ohne eingetragene Domain gibt es keine Einschränkung — dies ist nur für erste Tests empfohlen.
💡
Tragen Sie die Staging-Domain bereits vor dem ersten Veröffentlichen in Webflow ein. So ist der Shop von Anfang an geschützt und kann nicht auf unbeabsichtigten Seiten angezeigt werden.
🔗 URL-Synchronisation
Die URL-Synchronisation hält die Browser-URL der Elternseite (Ihre Webflow-Seite) immer im Einklang mit der aktuellen Shop-Ansicht im iFrame — ganz ohne Seitenneuladen.
Was das bedeutet
- Öffnet ein Besucher ein Produkt, ändert sich die URL von
/shop/ zu /shop/?_fi_view=detail&_fi_slug=produkt-name.
- Filtert er eine Kategorie, wird
?_fi_cat=42 angehängt.
- Der Zurück-Button des Browsers navigiert korrekt zur Produktliste oder zur vorherigen Kategorie.
- Links auf Produktdetailseiten sind direkt teilbar — beim Öffnen springt der Shop sofort zur richtigen Ansicht.
Aktivieren
Unter Einstellungen → Integration → URL-Synchronisation aktivieren (Checkbox) ein- oder ausschalten. Standardmässig aktiv.
URL-Parameter im Überblick
| Parameter | Werte | Bedeutung |
_fi_view | list · detail | Aktive Ansicht (Produktliste oder Produktdetail) |
_fi_slug | Produkt-Slug | Geöffnetes Produkt (nur bei detail) |
_fi_cat | Kategorie-ID (Zahl) | Aktiver Kategoriefilter |
Technischer Ablauf
- Der Shop-iFrame sendet per
postMessage ein flowtifyy-nav-push-Event, wenn der Besucher navigiert.
- Das Widget-Script auf der Elternseite schreibt die URL-Parameter mit
history.pushState — ohne Seitenneuladen.
- Beim Laden der Seite liest das Widget die vorhandenen URL-Parameter und schickt
flowtifyy-nav-init an den iFrame.
- Bei Back/Forward löst der Browser ein
popstate-Event aus — das Widget sendet flowtifyy-nav-pop an den iFrame, der die Ansicht entsprechend wiederherstellt.
💡
Die URL-Synchronisation funktioniert nur, wenn das Warenkorb-Widget-Script auf der Elternseite eingebunden ist. Reine iFrame-Einbettungen ohne Widget unterstützen diese Funktion nicht.
🔌 REST API Basic+
Flowtifyy bietet eine vollständige JSON-REST-API. Damit können Sie den Shop ohne iFrame in jedes eigene Frontend, eine native App oder ein externes System einbinden.
Basis-URL
https://app.flowtifyy.com/api/{slug}/
Alle Antworten haben folgendes Format:
{ "success": true, "data": ... }
{ "success": false, "error": "Fehlermeldung" }
Authentifizierung & CORS
Die öffentlichen API-Endpunkte benötigen keinen API-Key. Der Zugriff wird über CORS gesteuert: Unter Einstellungen → Allgemein → Erlaubte Domain tragen Sie Ihre Website-Domain ein (z.B. https://ihre-domain.ch). Anfragen von anderen Origins werden dann abgewiesen. Solange keine Domain hinterlegt ist, sind alle Origins erlaubt (*).
💡
Für die Produktion empfehlen wir, immer eine erlaubte Domain einzutragen, damit Ihr API-Zugang nicht offen ist.
Endpunkte
| Methode | Endpunkt | Beschreibung |
| GET | /api/{slug}/config | Shop-Konfiguration (Währung, MwSt, Zahlungsarten) |
| GET | /api/{slug}/products | Alle aktiven Artikel |
| GET | /api/{slug}/products/{slug} | Einzelner Artikel |
| GET | /api/{slug}/categories | Kategorien |
| GET | /api/{slug}/shipping-cost | Versandkosten berechnen |
| GET | /api/{slug}/check-customer | Kunden-Berechtigung für Rechnungskauf prüfen |
| POST | /api/{slug}/orders | Bestellung aufgeben |
GET /products — Parameter
| Parameter | Beschreibung |
category | Filtert nach Kategorie-Slug (optional) |
sort | price_asc, price_desc, name (Standard: Sortierwert) |
GET /api/mein-shop/products?category=zbehaelter&sort=price_asc
GET /shipping-cost — Parameter
| Parameter | Beschreibung |
value | Bestellwert (Dezimalzahl) |
quantity | Gesamtanzahl Artikel |
weight | Gesamtgewicht in Gramm |
country | Lieferland (ISO-Code, z.B. CH, DE) |
GET /api/mein-shop/shipping-cost?value=49.90&quantity=2&weight=800&country=CH
POST /orders — Request Body
Pflichtfelder: customer_name, customer_email, customer_address, customer_zip, customer_city, items
{
"customer_name": "Max Muster",
"customer_email": "max@example.com",
"customer_phone": "+41 79 123 45 67",
"customer_address": "Musterstrasse 1",
"customer_zip": "8001",
"customer_city": "Zürich",
"customer_country": "CH",
"customer_note": "Bitte klingeln",
"payment_method": "invoice",
"items": [
{ "product_id": 42, "qty": 2 },
{ "product_id": 17, "qty": 1 }
]
}
Mögliche Werte für payment_method: invoice, stripe, twint, vorauskasse, payrexx_twint, payrexx_cc — abhängig von den aktivierten Zahlungsarten im Shop.
Preise, Versandkosten und MwSt werden serverseitig berechnet und können nicht übermittelt werden. Die Antwort enthält die fertige Bestellnummer.
ℹ️
Produkt-IDs (product_id) erhalten Sie über GET /api/{slug}/products im Feld id. Für Stripe-Zahlungen ist zusätzlich der Endpoint POST /api/{slug}/create-payment-intent erforderlich — verwenden Sie dafür das fertige iFrame-Widget oder fragen Sie den Support für Details.
👥 Benutzer & Rollen
Unter Benutzer können Sie Teammitglieder einladen und Rollen vergeben.
Verfügbare Rollen
| Rolle | Rechte |
| Inhaber | Vollzugriff inkl. Abrechnung, Einstellungen und Benutzerverwaltung. |
| Admin | Alle Bereiche ausser Abrechnung und Benutzerverwaltung. |
| Mitarbeiter | Nur Bestellungen und Produkte (lesend und bearbeitend). |
Einladung senden
Klicken Sie auf Benutzer einladen, geben Sie die E-Mail-Adresse ein und wählen Sie eine Rolle. Der Eingeladene erhält einen Einladungslink per E-Mail und kann sich damit registrieren oder einloggen.
⭐
Die Anzahl Benutzer ist planabhängig: Free 1, Basic 3, Pro 5, Unlimited unbegrenzt.
🔐 Sicherheit & 2FA
Zwei-Faktor-Authentifizierung (2FA)
Wir empfehlen dringend, 2FA für Ihren Account zu aktivieren. Unter Mein Profil → Sicherheit können Sie 2FA per OTP-E-Mail einrichten. Nach der Aktivierung wird bei jedem Login ein Einmalcode an Ihre E-Mail-Adresse gesendet.
Passwort zurücksetzen
Über flowtifyy.com/forgot-password können Sie Ihr Passwort zurücksetzen. Sie erhalten einen Link per E-Mail, der 60 Minuten gültig ist.
Sitzungen
Sitzungen sind JWT-basiert. Browser-Sitzungen laufen nach 24 Stunden automatisch ab. Wenn Sie die App als PWA installiert haben, bleibt die Sitzung 1 Jahr aktiv — Sie werden nicht automatisch abgemeldet. Sie können sich jederzeit explizit abmelden.
💡
Verwenden Sie ein starkes, einzigartiges Passwort und aktivieren Sie 2FA — besonders für den Inhaber-Account, der Zugriff auf Abrechnung und alle Einstellungen hat.
💰 Plan & Abrechnung
Planübersicht
| Plan | Preis/Monat | Produkte | Benutzer |
| Free | CHF 0 | 10 | 1 |
| Basic | CHF 19 | 50 | 3 |
| Pro | CHF 39 | 200 | 5 |
| Unlimited | CHF 69 | Unbegrenzt | Unbegrenzt |
Alle kostenpflichtigen Pläne beinhalten eine 7-tägige Testphase ohne Kreditkarte. Die Karte wird erst nach Ablauf der Testphase belastet.
Upgrade / Downgrade
Unter Plan & Abrechnung können Sie jederzeit auf einen höheren Plan upgraden (sofort wirksam) oder kündigen (Ende der Zahlungsperiode). Das Downgrade auf den Free-Plan deaktiviert Artikel über dem Limit.
Zahlungsart ändern
Klicken Sie auf Zahlungsart & Rechnungen — Sie werden zum Stripe-Kundenportal weitergeleitet, wo Sie Kreditkarte, Rechnungen und Abonnement verwalten können.
Kündigung
Die Kündigung erfolgt über Plan wechseln / Kündigen → Stripe-Portal. Ihr Zugang bleibt bis zum Ende der bezahlten Periode aktiv. Es gibt keine Mindestlaufzeit.
❓ Häufige Fragen
Das Warenkorb-Widget zeigt kein Produktbild. Was tun? ▾
Stellen Sie sicher, dass Sie beim Artikel ein Hauptbild (nicht nur Galerie-Bilder) hinterlegt haben. Das Widget zeigt immer das Hauptbild des Artikels. Ohne Hauptbild erscheint ein Platzhalter-Icon.
TWINT ist bei mir im Shop nicht sichtbar — warum? ▾
TWINT wird nur für Lieferadressen in der Schweiz angezeigt. Wenn Ihr Kunde eine ausländische Lieferadresse eingibt, wird TWINT automatisch ausgeblendet.
Kann ich mehrere Shops mit einem Account verwalten? ▾
Ja. Pro Account können Sie mehrere Shops anlegen. Jeder Shop hat seinen eigenen Adminbereich, eigene Produkte, Bestellungen und Einstellungen. Das Abo gilt pro Shop — Sie benötigen für jeden Shop einen eigenen Plan.
Kann ich den Shop ohne Webflow nutzen? ▾
Ja. Der Shop ist unter app.flowtifyy.com/shop/IHR-SLUG auch direkt aufrufbar und kann in jede Website als iFrame eingebettet werden — nicht nur in Webflow. Zudem steht eine REST API zur Verfügung.
Wie ändere ich meine E-Mail-Adresse? ▾
Gehen Sie zu Mein Profil (oben rechts im Adminbereich). Dort können Sie E-Mail-Adresse und Passwort ändern. Die neue E-Mail-Adresse muss bestätigt werden.
Werden meine Daten in der Schweiz gespeichert? ▾
Ja. Alle Daten werden in einem zertifizierten Rechenzentrum in Zürich, Schweiz gespeichert. Es findet kein Transfer in Drittländer statt. Flowtifyy ist vollständig DSG- und DSGVO-konform.
Was passiert, wenn ich meinen Plan kündige? ▾
Ihr Account und alle Daten bleiben erhalten. Sie werden am Ende der bezahlten Periode automatisch auf den Free-Plan zurückgesetzt. Artikel über dem Free-Limit (10) werden deaktiviert — nicht gelöscht.
Kann ich Rabattcodes einsetzen? ▾
Rabattcodes werden über Stripe-Aktionscodes abgewickelt. Als Superadmin können Sie unter «Rabattcodes» allgemeine Marketing-Codes (z. B. für Social Media) oder individuelle Codes für einzelne Kunden erstellen. Kunden geben den Code im Stripe-Checkout ein.
📬 Support
Wir helfen Ihnen gerne weiter. So erreichen Sie uns:
💡
Bitte nennen Sie beim Support immer Ihre Shop-URL (Slug), eine kurze Fehlerbeschreibung und — falls vorhanden — einen Screenshot. So können wir Ihnen am schnellsten helfen.
🚀 Quickstart
Get your first Flowtifyy shop live in under 10 minutes. Follow these steps:
Create an account: Visit flowtifyy.com/register and sign up with your email address. Confirm the verification email.
Create a shop: After login, go to "My Shops". Click Create new shop, choose a name and shop URL (e.g. myshop).
Add your first product: In the admin area → Products → New product. Enter title, price, image and description, then save.
Embed in Webflow: Copy the iFrame code from Settings → Integration and paste it into your Webflow page. Done — your shop is live!
💡
The shop URL is permanent and forms the path to your shop. Choose it carefully — it cannot be changed later.
⚙️ Shop Setup
Under Settings in the admin area, you can fully customise your shop:
General
- Shop name: Appears in the shop header and in emails.
- Language / Currency: CHF and EUR are currently supported.
- Logo: Upload as PNG/SVG, displayed in the shop header.
- Colours & Fonts: Primary colour, text colour, background, font source (Google Fonts or Webflow inheritance).
Custom Domain Basic+
- Enter your desired domain (e.g.
shop.yourcompany.com).
- Set up a CNAME record pointing to
app.flowtifyy.com.
- SSL certificate is issued automatically (Let's Encrypt).
Email Settings
- Customise the sender name and subject of order confirmation emails.
- Legal details in the email footer (required by law in Switzerland).
- Optional copy of every order confirmation to your own email.
ℹ️
Order confirmation emails are always sent from noreply@flowtifyy.com. The Reply-To address is set to your shop email.
📦 Products
Creating a product
Go to Products → New product. Fill in the following fields:
| Field | Description |
| Name | Required. Appears in the shop and in order confirmations. |
| Price | Gross price including VAT (if enabled). |
| Description | Formatted text, Markdown supported. |
| Main image | Displayed in the cart widget and product card. JPEG/PNG/WebP/AVIF, max 10 MB. When AVIF is enabled, images are automatically optimised on upload. |
| Additional images | Image gallery in the product detail view. |
| Stock | Optional. At 0, the product is shown as "Sold out". |
| Status | Active / Draft / Inactive. Only active products appear in the shop. |
| Translations | Name and description can be maintained in DE / FR / IT / EN. |
⚠️
When downgrading to the Free plan, products above the limit (10 products) are automatically deactivated — not deleted.
💾 Digital Products
In addition to physical goods, Flowtifyy supports digital products — for example e-books, templates, PDFs, audio files or software licences. The platform's core focus remains on traditional product sales; digital products are a practical extension for your catalogue.
ℹ️
When creating or editing a product, select Digital Product under Product type. All other fields (name, price, images, variants) work identically to physical products.
Delivery methods
Choose per product how the digital content is delivered after purchase:
| Method | Description |
| File Upload | Upload one or more files directly into Flowtifyy (max. 100 MB per file). After the order, the buyer receives a secure, time-limited download link by email. |
| External Link | Enter an external URL (e.g. Google Drive, Dropbox or your own server). The link is revealed to the buyer only after successful payment. |
| Licence Key Pool | Upload a list of licence keys. With each order, a unique key is automatically assigned and sent by email. |
Access limits & expiry
- Max. downloads: How many times the buyer may use the download link (0 = unlimited).
- Validity period: How many days the link remains active (0 = no expiry).
File limits by plan
| Plan | Files per product |
| Free / Starter / Basic | 1 file |
| Pro | 3 files |
| Unlimited | 20 files |
Variants with digital content
Each variant of a digital product can have its own file upload or licence key pool — ideal for different editions of the same product (e.g. "Standard" vs. "Pro Version").
💡
Digital products have no stock level. Inventory management is not required; orders are processed automatically as soon as payment is received.
⚡ AVIF Image Optimisation
AVIF is a modern image format that compresses photos by up to 50 % less data than JPEG or WebP at the same visual quality. Smaller images load faster, improve your Core Web Vitals and increase conversion rates in the shop.
Activation
Enable the «AVIF (Convert images)» toggle. Save settings.
From now on, every newly uploaded product photo is automatically converted to AVIF — no manual step required.
Converting existing images
Images uploaded before activation remain in their original format. To convert all existing product photos at once:
Click «Convert now» in Settings → Design.
Flowtifyy converts all product photos in the background and shows how many images were converted.
Images already in AVIF format, SVGs and GIFs are automatically skipped.
Browser compatibility
AVIF is supported by all modern browsers (Chrome, Firefox, Safari 16+, Edge). On older browsers the server delivers the original image as a fallback.
💡
Conversion runs server-side at 80 % quality — visually indistinguishable from lossless for product photos, but significantly smaller. SVG and GIF files are not converted and remain in their original format.
🗂️ Categories
Categories structure your shop and allow customers to filter products. Go to Categories → New category.
- Each category gets a name (multilingual) and an optional image.
- Products can be assigned to one or more categories.
- Categories appear in the shop as tabs or filter tiles.
- Order can be adjusted via drag-and-drop.
🛒 Orders
All orders appear under Orders in real time.
Order status
| Status | Meaning |
| New | Order received, not yet processed. |
| In progress | Manually set when the order is being prepared. |
| Shipped | Item shipped or provided. |
| Completed | Delivery confirmed, order closed. |
| Cancelled | Order has been cancelled. |
Order detail
Click on an order to see all details: customer data, items, total, payment method, delivery address and timestamps. From here you can also change the status or resend an order confirmation.
Export
Orders can be exported as CSV (with filters by date and status).
💳 Payment Methods
Under Settings → Payment methods, activate and configure your desired methods.
| Method | Plan | Notes |
| Prepayment | Free+ | Customer transfers before shipping. Bank details appear in the order confirmation. |
| Invoice | Free+ | Payment after receipt. Optionally restricted to known customers. |
| TWINT Payment Link | Free+ | Static TWINT payment link. Customer manually enters the amount and pays. |
| TWINT Dynamic (Payrexx) | Pro+ | Exact-amount QR per order via Payrexx. Automatic payment confirmation. |
| Credit card (Payrexx) | Pro+ | Visa/MC via Payrexx. |
| Credit card (Stripe) | Pro+ | Visa/MC via Stripe. |
| PayPal | Pro+ | Via Payrexx integration. |
🟡 Setting up TWINT
TWINT Payment Link (Free+)
Copy the generated payment link.
Enter the link under Settings → Payment Methods → TWINT → Payment Link.
⚠️
With a static payment link, the customer must enter the amount manually. Automatic confirmation is not possible — the status must be set to "Paid" manually.
ℹ️
TWINT is only available for orders with a Swiss delivery address.
🔗 Webflow iFrame Integration
The easiest method: embed your shop directly as an iFrame on your Webflow page.
Get the embed code
In the admin area: Settings → Integration → iFrame code.
Copy the displayed HTML code.
Add it in Webflow as an Embed block (Webflow CMS plan or higher required).
Custom "Add to cart" buttons
You can use any element on your Webflow page as an "Add to cart" button:
<button data-fi-slug="SHOP-SLUG" data-fi-product="PRODUCT-SLUG">Add to cart</button>
<script src="https://app.flowtifyy.com/widget/embed.js?slug=SHOP-SLUG"></script>
Replace SHOP-SLUG with your shop URL and PRODUCT-SLUG with the product slug.
🔒 Domain Restriction
Under Settings → Integration you define which domains are allowed to embed your shop. This prevents your shop from being displayed on unauthorized websites.
| Field | Example | Plan |
| Webflow Staging Domain | https://your-shop.webflow.io | Free+ |
| Custom Domain (live website) | https://www.your-website.com | Basic+ |
Once a domain is configured, the shop will only display on that domain. Any attempt to embed it on another website will show a blocked notice instead. Without a configured domain there is no restriction — this is only recommended for initial testing.
💡
Add your staging domain before publishing in Webflow. This protects the shop from the start and ensures it cannot appear on unintended pages.
🔗 URL Sync
URL Sync keeps the browser URL of your Webflow page in sync with the current shop view inside the iframe — without any page reload.
What this means
- When a visitor opens a product, the URL changes from
/shop/ to /shop/?_fi_view=detail&_fi_slug=product-name.
- When filtering a category,
?_fi_cat=42 is appended.
- The browser's Back button correctly navigates back to the product list or previous category.
- Product detail links are directly shareable — opening the link jumps straight to the correct view.
Enable
Under Settings → Integration → Enable URL Sync (checkbox) toggle on or off. Enabled by default.
URL parameters
| Parameter | Values | Meaning |
_fi_view | list · detail | Active view (product list or product detail) |
_fi_slug | Product slug | Open product (only when detail) |
_fi_cat | Category ID (number) | Active category filter |
How it works
- The shop iframe sends a
flowtifyy-nav-push postMessage event whenever the visitor navigates.
- The widget script on the parent page writes the URL parameters using
history.pushState — without a page reload.
- On page load the widget reads any existing URL parameters and sends
flowtifyy-nav-init to the iframe.
- On browser back/forward the browser fires a
popstate event — the widget sends flowtifyy-nav-pop to the iframe, which restores the correct view.
💡
URL Sync only works when the cart widget script is embedded on the parent page. Pure iframe embeds without the widget do not support this feature.
🔌 REST API Basic+
Flowtifyy provides a full JSON REST API — integrate the shop into any custom frontend, native app, or external system without using an iframe.
Base URL
https://app.flowtifyy.com/api/{slug}/
All responses follow this format:
{ "success": true, "data": ... }
{ "success": false, "error": "Error message" }
Authentication & CORS
The public API endpoints require no API key. Access is controlled via CORS: under Settings → General → Allowed Domain, enter your website domain (e.g. https://your-domain.com). Requests from other origins will then be blocked. If no domain is set, all origins are allowed (*).
💡
For production, always configure an allowed domain to restrict open access to your API.
Endpoints
| Method | Endpoint | Description |
| GET | /api/{slug}/config | Shop configuration (currency, VAT, payment methods) |
| GET | /api/{slug}/products | All active products |
| GET | /api/{slug}/products/{slug} | Single product |
| GET | /api/{slug}/categories | Categories |
| GET | /api/{slug}/shipping-cost | Calculate shipping cost |
| GET | /api/{slug}/check-customer | Check customer eligibility for invoice payment |
| POST | /api/{slug}/orders | Place an order |
GET /products — Parameters
| Parameter | Description |
category | Filter by category slug (optional) |
sort | price_asc, price_desc, name (default: sort order) |
GET /api/my-shop/products?category=containers&sort=price_asc
GET /shipping-cost — Parameters
| Parameter | Description |
value | Order value (decimal) |
quantity | Total number of items |
weight | Total weight in grams |
country | Delivery country (ISO code, e.g. CH, DE) |
GET /api/my-shop/shipping-cost?value=49.90&quantity=2&weight=800&country=CH
POST /orders — Request Body
Required fields: customer_name, customer_email, customer_address, customer_zip, customer_city, items
{
"customer_name": "Jane Smith",
"customer_email": "jane@example.com",
"customer_phone": "+41 79 123 45 67",
"customer_address": "Example Street 1",
"customer_zip": "8001",
"customer_city": "Zurich",
"customer_country": "CH",
"customer_note": "Please ring the bell",
"payment_method": "invoice",
"items": [
{ "product_id": 42, "qty": 2 },
{ "product_id": 17, "qty": 1 }
]
}
Accepted values for payment_method: invoice, stripe, twint, vorauskasse, payrexx_twint, payrexx_cc — depending on the payment methods enabled in the shop.
Prices, shipping costs and VAT are calculated server-side and cannot be submitted. The response contains the order number.
ℹ️
Product IDs (product_id) are available from GET /api/{slug}/products in the id field. For Stripe payments, the additional endpoint POST /api/{slug}/create-payment-intent is required — use the built-in iframe widget or contact support for implementation details.
👥 Users & Roles
Under Users you can invite team members and assign roles.
Available roles
| Role | Permissions |
| Owner | Full access including billing, settings and user management. |
| Admin | All areas except billing and user management. |
| Staff | Orders and products only (read and edit). |
⭐
The number of users depends on your plan: Free 1, Basic 3, Pro 5, Unlimited unlimited.
🔐 Security & 2FA
Two-Factor Authentication (2FA)
We strongly recommend enabling 2FA for your account. Under My Profile → Security you can set up 2FA via OTP email. Once activated, a one-time code is sent to your email address with every login.
Password reset
You can reset your password at flowtifyy.com/forgot-password. You will receive a link by email valid for 60 minutes.
💡
Use a strong, unique password and enable 2FA — especially for the owner account which has access to billing and all settings.
💰 Plan & Billing
Plan overview
| Plan | Price/month | Products | Users |
| Free | CHF 0 | 10 | 1 |
| Basic | CHF 19 | 50 | 3 |
| Pro | CHF 39 | 200 | 5 |
| Unlimited | CHF 69 | Unlimited | Unlimited |
All paid plans include a 7-day trial without requiring a credit card upfront. Your card is only charged after the trial ends.
Upgrade / Downgrade
Under Plan & Billing you can upgrade at any time (effective immediately) or cancel (at end of billing period). Downgrading to the Free plan deactivates products above the limit.
Cancellation
Cancellation is done via Change plan / Cancel → Stripe portal. Your access remains active until the end of the paid period. There is no minimum contract period.
❓ Frequently Asked Questions
The cart widget shows no product image. What to do? ▾
Make sure you have set a main image for the product (not just gallery images). The widget always shows the product's main image. Without a main image, a placeholder icon appears.
TWINT is not shown in my shop — why? ▾
TWINT is only displayed for orders with a Swiss delivery address. If the customer enters a non-Swiss delivery address, TWINT is automatically hidden.
Can I manage multiple shops with one account? ▾
Yes. You can create multiple shops per account. Each shop has its own admin area, products, orders and settings. The subscription applies per shop — you need a separate plan for each shop.
Can I use the shop without Webflow? ▾
Yes. The shop is also directly accessible at app.flowtifyy.com/shop/YOUR-SLUG and can be embedded as an iFrame into any website — not just Webflow. A REST API is also available.
Is my data stored in Switzerland? ▾
Yes. All data is stored in a certified data centre in Zurich, Switzerland. There is no transfer to third countries. Flowtifyy is fully compliant with the Swiss DSG and GDPR.
What happens when I cancel my plan? ▾
Your account and all data are retained. At the end of the paid period, you are automatically moved to the Free plan. Products above the Free limit (10) are deactivated — not deleted.
Can I use discount codes? ▾
Discount codes are handled via Stripe promotion codes. As a superadmin, you can create general marketing codes (e.g. for social media) or individual codes for specific customers. Customers enter the code during Stripe checkout.
📬 Support
We're happy to help. Here's how to reach us:
💡
When contacting support, please always mention your shop URL (slug), a brief description of the issue and — if available — a screenshot. This helps us help you faster.