It’s not Stipe… it’s whatever plugin you’re using.

Stripe always works with the smallest denomination of the currency.

For USD that’s cents.
For GBP that’s pence
For JPY that’s Yen

So £10 is 1,000 pence (i.e. the amount in £ multiplied by 100)

Whereas 10¥ is 10¥ (you don’t multiply by 100 here - otherwise you’ll get the error you’ve got)

Normally, when calling the API directly you need to multiply the amount (in £) by 100 to get the amount in pence, assuming the selected currency has a decimal denomination.

In the case of whatever plugin you’re using, it looks like it’s already doing that for you, but without the check to see if the currency has a smaller denomination.

So you’ll need to do that yourself, and then divide by 100 when defining the price if there is no denomination smaller than the one you’re working the price out in (e.g. JP¥).

1 Like