Für Entwickler
Bring deine Progressive Web App in den Store und wähle, wie du abrechnest.
Zur Entwickler-Konsole Als Entwickler registrierenListing-Pläne
Kostenpflichtige Apps zahlen eine feste Jahresgebühr (keine Monatsabos) – du rechnest deine Kunden selbst ab und behältst 100 % deines Umsatzes. Über dem Installations-Limit kosten je 1.000 weitere Installationen 2 €.
Für 100 % kostenlose Apps
Free PWA
10 € einmalig
- Einmalig 10 € Prüf-/Listungsgebühr
- Dauerhaft gelistet, solange 100 % kostenlos
- Badge „100 % Free“ & Kostenlos-Filter
- Keine In-App-Käufe, kein Abo
Starter
49 € / Jahr
- 1 PWA
- Bis 10.000 Installationen/Jahr
- Basis-Statistiken
- Store-Eintrag & Suche
Beliebt
Pro
199 € / Jahr
- Bis 5 PWAs
- Bis 100.000 Installationen/Jahr
- Featured-Placement in Kategorien
- Erweiterte Statistiken & Webhooks
Business
599 € / Jahr
- Unbegrenzt PWAs & Installationen
- Startseiten-Banner (Rotation)
- Redaktions-Empfehlung
- Priorisierte Prüfung & Support
Wichtig – Laufzeit 1 Jahr: Alle kostenpflichtigen Pläne werden ausschließlich jährlich abgerechnet. Wird die Gebühr nach Ablauf eines Jahres nicht bezahlt, wird der Eintrag automatisch deaktiviert und aus dem PWA Store gelöscht. Die Free PWA bleibt nach der einmaligen Gebühr dauerhaft gelistet, solange sie zu 100 % kostenlos ist.
Optional: Store-Billing. Du willst dich nicht um Zahlungen kümmern? Nutze unsere Kauf- und Abo-API – dafür behält der Store 15 % Provision auf In-App-Umsätze.
SDK-Referenz
Binde das SDK in deine PWA ein (nur Modell A).
<script src="https://pwa-store.app/sdk/v1.js"></script>
<script>
const store = PWAStore.init({ appId: "YOUR_APP_ID" });
// Produkt kaufen oder Abo starten
const result = await store.purchase({ productId: "pro_monthly" });
// Berechtigungen prüfen
const { active } = await store.getEntitlement("pro");
</script>| Methode | Beschreibung |
|---|---|
| init({ appId }) | SDK initialisieren |
| purchase({ productId }) | Kauf-Dialog öffnen |
| getEntitlement(key) | Aktives Abo / Freischaltung prüfen |
| restore() | Käufe wiederherstellen |
Webhooks
Wir senden signierte POST-Anfragen an deine Webhook-URL. Prüfe die Signatur im Header X-PWAStore-Signature (HMAC-SHA256).
{
"event": "subscription.renewed",
"appId": "taskflow",
"userId": "usr_8f2a",
"productId": "pro_monthly",
"amount": 399,
"currency": "EUR",
"createdAt": "2026-11-03T10:00:00Z"
}// Node / Edge
const sig = req.headers.get("X-PWAStore-Signature");
const body = await req.text();
const expected = await hmacSha256(WEBHOOK_SECRET, body);
if (!timingSafeEqual(sig, expected)) return new Response("invalid", { status: 401 });Events: purchase.completed, subscription.started, subscription.renewed, subscription.cancelled, refund.issued, payout.sent