Cannot purchase API credits — Stripe SetupIntent 0 EUR breaks 3D Secure for all European cards (PSD2/SCA)

Resolved 💬 13 comments Opened Apr 9, 2026 by maximkrusina Closed Jul 2, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report
  • [x] I am using the latest version of Claude Code

What's Wrong?

It is impossible to purchase API credits on platform.claude.com for customers with European bank cards. This has been reported before in #25745 (auto-closed without resolution).

Root Cause (Technical)

Anthropic's billing uses Stripe SetupIntent to verify cards before charging. SetupIntent has no amount — so the 3D Secure challenge is sent as 0.00 EUR. Under EU PSD2/SCA regulations, all online transactions require Strong Customer Authentication. However, European banks cannot process 3DS authentication for zero-amount transactions — their apps show nothing to confirm, or return an error.

The fix is straightforward: use PaymentIntent with the actual purchase amount (e.g., $50) instead of SetupIntent. This way, 3DS would authenticate against a real charge, which banks handle correctly. This is exactly how claude.ai subscriptions (Pro/Max/Team) work — and those payments go through fine with the same cards.

What I've Tried

| Card / Issuer | Type | Result |
|---|---|---|
| Raiffeisenbank CZ Mastercard | Debit | RB key app cannot confirm 0 EUR 3DS |
| Revolut | Visa | 3DS fails on zero amount |
| Wise USD virtual card | Visa (US BIN) | Same failure |

Additional attempts:

  • Multiple browsers (Safari, Chrome, Playwright headless)
  • Cleared cookies, Stripe Link logout
  • Stripe Link email verification → card selection → still fails at 3DS

Error message: "Cannot upgrade to prepaid without a valid payment method."

Impact

  • Our Make.com automation (DocuMentor — document processing via Claude API) has been down since April 3rd
  • We are existing paying customers: Team plan (5 seats) + Max plan (20x) = ~€290/month
  • We submitted Contact Sales form + support email — AI bot responded with generic advice, no human follow-up

Environment

  • Org ID: [redacted — provided via support email]
  • Account: maxim@mfcc.cz
  • Country: Czech Republic (EU)
  • Console URL: platform.claude.com/settings/billing

Expected Behavior

Clicking "Buy credits" should charge the card directly (PaymentIntent) or offer alternative payment methods (bank transfer, PayPal, Apple Pay). Zero-amount SetupIntent should not be used for European cards.

Related Issues

  • #25745 (same problem, auto-closed without resolution, 15+ affected users)

View original on GitHub ↗

This issue has 13 comments on GitHub. Read the full discussion on GitHub ↗