Bezahlseite: feste Kartenzahlung statt Stripe Link

Screenshot des Nutzers zeigte: Wer ein Link-Konto hat, landet auf einer
Link-Ansicht mit gespeicherter Karte, schwarzem 'Pay'-Knopf und einem
kleinen, englischen 'Pay without Link' als einzigem Ausweg. Fuer Menschen,
die Deutsch kaum lesen, ist das eine Sackgasse — und das ist genau die
Zielgruppe.

payment_method_types[0]=card schaltet die automatische Methodenwahl ab und
damit auch Link. Jeder sieht jetzt dieselbe Ansicht mit Kartenfeldern.

ACHTUNG fuer spaeter: Solange diese Angabe gesetzt ist, erscheinen KEINE
weiteren Methoden, auch wenn sie im Dashboard freigeschaltet werden. Wer
PayPal oder Klarna anbieten will, muss sie hier ergaenzen.

Kauf nach der Aenderung geprueft: liefert weiter gueltige cs_live_-Seiten.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
JUSNandClaude Opus 5 committed 2026-09-23 16:05:11 +02:00
1 parent 585f027ba5
commit f42761b040
1 file changed
+8
+8
View File
@@ -509,6 +509,14 @@ async function kaufenHandler(request: Request, env: Env): Promise<Response> {
const walletId = crypto.randomUUID(); const walletId = crypto.randomUUID();
const params = new URLSearchParams(); const params = new URLSearchParams();
params.set('mode', 'payment'); params.set('mode', 'payment');
// Zahlungsart fest auf Karte setzen. Ohne diese Angabe waehlt Stripe die
// Methoden selbst ("dynamic payment methods") und stellt Link ganz nach
// vorn — mit gespeicherter Karte und einem kleinen, englischen
// "Pay without Link" als einzigem Ausweg. Fuer Menschen, die Deutsch kaum
// lesen, ist das eine Sackgasse. Sobald weitere Methoden (PayPal, Klarna)
// im Stripe-Konto freigeschaltet sind, hier ergaenzen — sonst erscheinen
// sie nicht, weil diese Angabe die automatische Auswahl abschaltet.
params.set('payment_method_types[0]', 'card');
params.set('line_items[0][price]', priceId); params.set('line_items[0][price]', priceId);
params.set('line_items[0][quantity]', '1'); params.set('line_items[0][quantity]', '1');
params.set('success_url', `${origin}/demo?kauf=ok&session_id={CHECKOUT_SESSION_ID}`); params.set('success_url', `${origin}/demo?kauf=ok&session_id={CHECKOUT_SESSION_ID}`);