Rendered at 22:01:59 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
jordn 2 hours ago [-]
Hey @rsorto – sorry about this! I work at Anthropic and can see that there's a UI/form bug which didn't account for internationalization very well. A typed "5,04" got converted to $504. We're fixing the bug now and the support team will reach out to you directly to address your case, shortly.
rsorto 39 minutes ago [-]
Hola Jordan,
Thank you very much for your support with this. I appreciate you stepping in, acknowledging the engineering flaw, and escalating my case.
As additional feedback on the automated support pipeline: I understand the desire to automate and make processes more efficient. However, a person should not have to rely on getting a post to the top of Hacker News just to bypass AI bots and get a human to look at an obvious financial error. Luckily, you were here and acted proactively, which I truly value.
I will await the support team's communication.
Pura vida!
rancar2 57 minutes ago [-]
Thanks for the attention and fixing this.
Note to others who are blaming Amthropic in various ways. This is what taking responsibility is.
Note also that Anthropic outsources the billing and metered billing to a third party still, who is doing very well with the growth. It’s a more recent company in the space so it comes with a lot of bugs that are getting learned with time which is why there are so many interesting (at scale) and obvious errors (billing systems are build over years not months) being corrected with time.
pcc 1 hours ago [-]
While you’re at it could you please also fix the bug where downgrading a team member from premium to standard, applies the downgrade to the wrong person at the next billing.
I’ve reported this 3 months in a row and nobody seems to be hearing.
jordn 46 minutes ago [-]
Passing that on to the right team! Thank you!
clickety_clack 2 hours ago [-]
This is the kind of mistake I dread, where a normal human would be able to say "oh, sure of course this is a mistake, sorry about that", but you don't get to talk to a human. A corporation can wait months for resolution, but an individual can't.
JacobAsmuth 2 hours ago [-]
Yup. We've been living in a world with ZERO obvious software mistakes and now that these LLM things are running wild, we've got more obvious bugs than ever!
rsorto 2 hours ago [-]
Yes, they are building frontier models and should be responsible to handle basic text input validation.
An additional point here is that Anthropic is hiding behind bots so they don't have to fix it and support humans with real world problems.
It's frustrating to be forced into a financial burden just because they decided to cut corners on traditional software debugging protocols.
1 hours ago [-]
59 minutes ago [-]
striking 3 hours ago [-]
I'm looking at the "Add credits" screen on https://platform.claude.com and it prominently displays the "total due" as $504.00 when typing `5,04` into the input...
tallanvor 2 hours ago [-]
It feels more like a writing exercise - too many extraneous details right from the start: "I am a LegalTech Attorney leading a developer team" feel necessary if you're telling a story, but is completely irrelevant if you're reporting an issue. And $5.04?? Who knows their spending requirements to that level of specificity?
Is it possible? I guess, but I doubt they're being honest about what was being displayed on the screen.
rsorto 2 hours ago [-]
Striking, thanks for the comment,
Please note that I typed 5.04 (with a dot), not a comma.
I was doing a manual account recharge (adding credits), where the user defines an arbitrary prepaid amount. On a localized system/keyboard setup, entering the dot did not alter the total due or warn me of a 100x increase before hitting the submit button.
Also, the core issue is the complete lack of a final checkout/confirmation step for an arbitrary recharge amount. In proper financial UX, clicking the primary button should trigger a modal stating: "You are about to recharge your account with $504.00 USD + $65.52 VAT. Total due: $569.52. Confirm payment?". Executing an instantaneous credit card charge on a single click while silently processing ambiguous inputs is precisely the dangerous design flaw I am pointing out.
Saludos,
donutdonot 2 hours ago [-]
This happens everywhere . I'm in Germany (which uses commas) but have my distro set to English (using dots).
I've encountered this problem on many sites, eg Amazon or eBay where I accidentally sell my items for 599,00 instead of 5.99
rsorto 2 hours ago [-]
Donuntdonot,
Thanks for validating my point, and I understand your frustration too. Luckily, in your case, as the seller, you can edit the listing afterward; I can’t. I have to deal with Anthropic, which already charged me $569.52.
Sad....
nottorp 2 hours ago [-]
Lots of space for vibe coding jokes here. And 504 is significant for Costa Rica, it can buy a lot of lattes.
On a more serious note, do these vibe coded chatbot payment UIs accept like one time use Revolut CC numbers?
And on a second serious note, have they heard of 3D secure or you simply can't pay with an european credit card?
rsorto 2 hours ago [-]
Nottorp, don't be fooled, with Starbucks prices here in Costa Rica, $500 will barely get you a couple of weeks of lattes! Joke too :)
Going back to your serious notes, I successfully replicated the exact mechanics of this bug inside the Console, and it is a classic frontend race condition/bypass flaw:
When your system/keyboard is in a locale that uses commas, the input text box still physically allows you to type a dot (like typing 5.04 or 0.5). The catastrophic UX failure happens because if you press the "Enter" key immediately after typing, the form submits the raw, un-sanitized string to the backend before the frontend validation layer can intercept it, block it, or refresh the "Total due" box.
It completely bypasses its own validation rules (like the $5.00 minimum enforced minimum), skips any error prevention, and fires the single-click payment request to the gateway instantly with the misinterpreted value.
Please note that English is not my native language. I used AI to make sure that my technical explanation of the decimal bug was clear and well structured so that the community here could understand it.
I agree that the text structure might look robotic, but the $569.52 unauthorized charge on my credit card right now is 100% real.
Pura vida!
rrauenza 3 hours ago [-]
Your situation is not funny, but it reminded me of an old story from the internet in the 1990's, The Neiman Marcus Cookie Recipe
> My daughter & I had just finished a salad at Neiman-Marcus Cafe in Dallas & decided to have a small dessert. Because our family are such cookie lovers, we decided to try the "Neiman-Marcus Cookie". It was so excellent that I asked if they would give me the recipe and they said with a small frown, "I'm afraid not." Well, I said, would you let me buy the recipe? With a cute smile, she said, "Yes." I asked how much, and she responded, "Two fifty." I said with approval, just add it to my tab.
It ends with them being charged $250 not $2.50 and the author shares the recipe with the world as revenge.
I think it's a frequent misconception that the AI version is going to be clearer or more well-structured or easier to read or understand than what you would write as a non-native-English speaker. It's probably not.
cyanydeez 3 hours ago [-]
do you think a human overcharged them or did an AI?
merb 3 hours ago [-]
What did you want to accomplish with 5.04??
In Spanish or other European countries 5,04 would’ve been correct?
So 5.04 would either be invalid or 504 like Claude did.
2 hours ago [-]
rsorto 3 hours ago [-]
Hola Merb,
To be 100% clear: I wanted to load exactly five dollars and four cents ($5.04) into my account. I typed 5.04.
The core problem here is that in secure financial pipelines, ambiguous inputs must trigger a validation error and reject the transaction, not silently guess the amount and execute a 100x overcharge.
If Anthropic's backend expected a comma due to my regional settings and couldn't parse the dot, the correct engineering behavior is to throw an "Invalid Format" message and disable the pay button. Silently stripping the decimal character and instantly draining $569.52 (including local VAT taxes) from a user's card with zero confirmation screen is a catastrophic failure in error prevention.
Gracias!
rrauenza 2 hours ago [-]
Someone above also points out the inverse also fails for a decimal locale:
> I'm looking at the "Add credits" screen on https://platform.claude.com and it prominently displays the "total due" as $504.00 when typing `5,04` into the input...
bjourne 1 hours ago [-]
Haha, I sympathize :). For those who may be confused, the problem is that most i18n on the web is so shit that most people from countries where the comma is the decimal separator will enter a period instead. In many of those countries the period serves as the thousands separator so entering 1.203.456,3 should be interpreted as 1203456.30. But it almost never is so in the few cases when it works (like here) it causes nasty surprises.
yeukhon 43 minutes ago [-]
We are now turning HN into a support forum?
jacquesm 1 hours ago [-]
That's what you get when you vibe code your billing site.
rsorto 4 hours ago [-]
UPDATE: I just checked my bank statement and it’s even worse than I thought. Because the system processed the incorrect $504.00 base amount, it automatically calculated local VAT (taxes) on top of it, adding an extra $65.52. The absolute total taken from my card by this single-click bug is $569.52.
Here is the proof of the bank statement pending charge:
TECHNICAL UPDATE (BUG REPLICATION): I just managed to replicate the input validation bug inside the console.
As you can see in the screenshot below, when your regional settings use commas for decimals (e.g., my balance shows 430,26), the input field still physically allows you to type a dot (0.5 or 5.04).
The catastrophic UX failure happens when you press "Enter" right after typing. The form instantly submits the raw, un-sanitized input string to the backend before the frontend validation layer can block it or correctly alert the user.
The system breaks its own "USD 5.00 minimum" rule, bypasses proper error prevention, and immediately fires the payment request to Stripe/the gateway.
Thank you very much for your support with this. I appreciate you stepping in, acknowledging the engineering flaw, and escalating my case.
As additional feedback on the automated support pipeline: I understand the desire to automate and make processes more efficient. However, a person should not have to rely on getting a post to the top of Hacker News just to bypass AI bots and get a human to look at an obvious financial error. Luckily, you were here and acted proactively, which I truly value.
I will await the support team's communication.
Pura vida!
Note to others who are blaming Amthropic in various ways. This is what taking responsibility is.
Note also that Anthropic outsources the billing and metered billing to a third party still, who is doing very well with the growth. It’s a more recent company in the space so it comes with a lot of bugs that are getting learned with time which is why there are so many interesting (at scale) and obvious errors (billing systems are build over years not months) being corrected with time.
I’ve reported this 3 months in a row and nobody seems to be hearing.
An additional point here is that Anthropic is hiding behind bots so they don't have to fix it and support humans with real world problems.
It's frustrating to be forced into a financial burden just because they decided to cut corners on traditional software debugging protocols.
Is it possible? I guess, but I doubt they're being honest about what was being displayed on the screen.
Please note that I typed 5.04 (with a dot), not a comma.
I was doing a manual account recharge (adding credits), where the user defines an arbitrary prepaid amount. On a localized system/keyboard setup, entering the dot did not alter the total due or warn me of a 100x increase before hitting the submit button.
Also, the core issue is the complete lack of a final checkout/confirmation step for an arbitrary recharge amount. In proper financial UX, clicking the primary button should trigger a modal stating: "You are about to recharge your account with $504.00 USD + $65.52 VAT. Total due: $569.52. Confirm payment?". Executing an instantaneous credit card charge on a single click while silently processing ambiguous inputs is precisely the dangerous design flaw I am pointing out.
Saludos,
I've encountered this problem on many sites, eg Amazon or eBay where I accidentally sell my items for 599,00 instead of 5.99
Thanks for validating my point, and I understand your frustration too. Luckily, in your case, as the seller, you can edit the listing afterward; I can’t. I have to deal with Anthropic, which already charged me $569.52.
Sad....
On a more serious note, do these vibe coded chatbot payment UIs accept like one time use Revolut CC numbers?
And on a second serious note, have they heard of 3D secure or you simply can't pay with an european credit card?
Going back to your serious notes, I successfully replicated the exact mechanics of this bug inside the Console, and it is a classic frontend race condition/bypass flaw:
When your system/keyboard is in a locale that uses commas, the input text box still physically allows you to type a dot (like typing 5.04 or 0.5). The catastrophic UX failure happens because if you press the "Enter" key immediately after typing, the form submits the raw, un-sanitized string to the backend before the frontend validation layer can intercept it, block it, or refresh the "Total due" box.
It completely bypasses its own validation rules (like the $5.00 minimum enforced minimum), skips any error prevention, and fires the single-click payment request to the gateway instantly with the misinterpreted value.
I uploaded the live replication screenshot here: https://ibb.co/HTY88MZ3
Please note that English is not my native language. I used AI to make sure that my technical explanation of the decimal bug was clear and well structured so that the community here could understand it.
I agree that the text structure might look robotic, but the $569.52 unauthorized charge on my credit card right now is 100% real.
Pura vida!
> My daughter & I had just finished a salad at Neiman-Marcus Cafe in Dallas & decided to have a small dessert. Because our family are such cookie lovers, we decided to try the "Neiman-Marcus Cookie". It was so excellent that I asked if they would give me the recipe and they said with a small frown, "I'm afraid not." Well, I said, would you let me buy the recipe? With a cute smile, she said, "Yes." I asked how much, and she responded, "Two fifty." I said with approval, just add it to my tab.
It ends with them being charged $250 not $2.50 and the author shares the recipe with the world as revenge.
https://www.snopes.com/fact-check/neiman-marcus-cookies/
In Spanish or other European countries 5,04 would’ve been correct?
So 5.04 would either be invalid or 504 like Claude did.
To be 100% clear: I wanted to load exactly five dollars and four cents ($5.04) into my account. I typed 5.04.
The core problem here is that in secure financial pipelines, ambiguous inputs must trigger a validation error and reject the transaction, not silently guess the amount and execute a 100x overcharge.
If Anthropic's backend expected a comma due to my regional settings and couldn't parse the dot, the correct engineering behavior is to throw an "Invalid Format" message and disable the pay button. Silently stripping the decimal character and instantly draining $569.52 (including local VAT taxes) from a user's card with zero confirmation screen is a catastrophic failure in error prevention.
Gracias!
> I'm looking at the "Add credits" screen on https://platform.claude.com and it prominently displays the "total due" as $504.00 when typing `5,04` into the input...
Here is the proof of the bank statement pending charge:
https://ibb.co/tMVkf0nx
As you can see in the screenshot below, when your regional settings use commas for decimals (e.g., my balance shows 430,26), the input field still physically allows you to type a dot (0.5 or 5.04).
The catastrophic UX failure happens when you press "Enter" right after typing. The form instantly submits the raw, un-sanitized input string to the backend before the frontend validation layer can block it or correctly alert the user.
The system breaks its own "USD 5.00 minimum" rule, bypasses proper error prevention, and immediately fires the payment request to Stripe/the gateway.
Here is the replication proof: https://ibb.co/HTY88MZ3