Files
aza/AzA march 2026 - Kopie (13)/README_STRIPE_SETUP.txt
2026-04-19 20:41:37 +02:00

53 lines
1.4 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
AZA Stripe Vorbereitung (Webhook Skeleton)
Ziel
- Stripe Webhooks sicher empfangen (Signaturprüfung)
- Events auditieren (admin_audit)
- Noch KEINE Plan/Status-Automatik
Voraussetzung
1) Stripe Python SDK installieren:
pip install stripe
2) Umgebungsvariablen setzen:
- AZA_STRIPE_SECRET_KEY="sk_live_..."
- AZA_STRIPE_WEBHOOK_SECRET="whsec_..."
Webhook Endpoint
- POST /stripe/webhook
Was passiert aktuell
- Signatur wird geprüft
- Event wird in admin_audit geloggt:
action = "stripe:<event_type>"
token = "<event_id>"
old_value = "received"
new_value = "ok"
Wichtig
- Der Server muss öffentlich erreichbar sein, damit Stripe den Webhook callen kann.
- Im Stripe Dashboard muss ein Webhook mit deiner URL auf /stripe/webhook zeigen.
Nächster Schritt
- Stripe Events auswerten und daraus users.status / users.plan setzen.
(z.B. invoice.payment_succeeded -> active, invoice.payment_failed -> suspended)
Test (lokal / dev)
1) Stripe CLI installieren und einloggen:
stripe login
2) Webhook lokal weiterleiten (Port/Host anpassen):
stripe listen --forward-to http://localhost:9000/stripe/webhook
Die CLI zeigt dabei einen Webhook-Secret an (whsec_...), den du als
AZA_STRIPE_WEBHOOK_SECRET setzen musst.
3) Test-Event auslösen:
stripe trigger invoice.payment_succeeded
4) Prüfen:
- Server sollte HTTP 200 {"ok": true} zurückgeben
- Audit-Eintrag erscheint über:
POST /admin/audit/list