Payment currency in EU

I was concerned when I saw the “Version already installed” message during the update, but it seems to have fixed the problem.

On my test server (with private access) I was already at version 3.11.0, I followed the steps described and it seems to work correctly, the euro symbol and the price are displayed without problems.

However, I have a problem when I try to subscribe to the plan, I encounter the error 504 Gateway Time-out, after a long wait in “pending” after clicking on the “Choose this plan” button

Below is a screen to better understand:

Anyone having the same problem?

On the reproduction of my site locally, I am already at version 3.12, unfortunately I had not yet read this post. What are the steps in this case?

I did not have the problem with the sign up buttons on the front-end after applying the fix above.

Have just upgraded to 3.12.0 now also and everything is still working as expected.

Hopefully a dev will reply to your problem on how to revert from 3.12.0 down to 3.10.0

1 Like

I understand what the problem is.

The error is related to previously existing users who signed up with another currency, if I deactivate the subscription and try to make a new one with a different currency, I encounter this error.

If I try with a new user, just created, the problem does not exist.

I hope this information will help you solve the problem more easily.

I look forward to resolving the problem having already updated to version 3.12 locally.

Thank you

@giacomosilli the bug with not being able to subscribe is a known issue. It stems out of a limitation imposed by the Stripe:

Customers are single-currency, meaning once you’ve assigned a currency, invoiced the customer, or set a customer balance, the currency cannot be changed. This locked state is visible on the Dashboard via a disabled Currency dropdown.

ref. https://stripe.com/docs/billing/customer#currency (edited)

This is definitely an edge case, we don’t expect publishers to be changing their currencies after initial setup much. But once someone signs up they have to stay within the same currency, at least for now.

@naz Thanks for the clarification regarding the currency for already subscribed users.

What about the other problem?
On my local replica I updated to 3.12 before reading your step-by-step post.

What is the correct procedure to solve the problem?

Hey @giacomosilli I believe you can execute rollback multiple times until you get to 3.10.0 to be able to follow the update steps.

Hi @naz
I gave the ghost update --rollback command, and I’m at version 3.11.0,
if I try to give the same command again I find the error:

An error occurred.
Message: 'No previous version found'


Debug Information:
    OS: Microsoft Windows 10 Pro, v10.0.18362
    Node Version: v10.16.1
    Ghost Version: 3.11.0
    Ghost-CLI Version: 1.13.1
    Environment: production
    Command: 'ghost update --rollback'

but looking at the folders I have the old versions up to 3.8.0
I also tried to stop the server, start it and try again, but it doesn’t work.

But this is the local server, it is not a priority, I could reinstall it. If you are interested in going further to help other users with the same problem, I am available to give you more information and solve the problem together.

If I don’t ask too much, I also have another case, the most important.
My production server is at version 3.9.0.
Do I have to use the ghost update command, or ghost update 3.10.0, and do I follow the steps described above?

Thank you

Please use ghost update. That will jump you straight to the latest version and will skip any possibility of having the bug in the first place

i f I try to give the same command again I find the error:

Was this instance of Ghost set up from 3.9.0 or what was it’s “first” version?

Thank you, i’ll try it asap.

Locally, i installed version 3.8.0 on the day it was published, and subsequently I have always updated with the release of subsequent versions.

I see the new currencies being updated. If you’re using Stripe in India, the payments will not go through because of the regulation - of not allowing foreign currency (i.e. USD etc) for residents. i.e. you have to use a US credit card to pass the payment.

Any ETA on when INR / ₹ will be included in the next update? Is there a place where we can make some changes to accept a different currency by default?

1 Like

Hey @jpm. The INR support is not yet on the table, so the best way around it is @fabien’s answer you linked to. Members is still in beta and we will reconsider putting in more currencies as there are more requests for them :slight_smile:

2 Likes

Noted. Is there any place where we can vote for this? I feel confident there are a tonne of developers in India who would love to make this work! Good promotion for Ghost in India :wink:

Was searching for fabien’s response - but couldn’t decipher a detailed solution.

1 Like

@jpm , the solution Fabien described involves modifying the record directly in the db. Something like this answer - Payment currency in EU, should work but instead of CAD you’d use INP and apply this to every USD plan you have in the database. Make sure to also restart your instance after changing the db. Also, strongly advise backing everything up and trying these changes on “test” Stripe account first.

1 Like

Thanks Naz, if we update the db directly, does it go to default after any updates that we do via the CLI too Ghost?

Yes, just found that out myself, so raising a thread for this… Here you can support an upvote for Stripe + INR currency acceptance in Ghost.

1 Like

does it go to default

Sorry, not quite following this part. What goes to which default? What exactly do you mean? If you update the values in the db and restart the instance those plans will be created on connected Stripe account and will stay there and in your DB till you manually remove them.

One thing to note, with this approach we do not guarantee that your currencies will work with every new minor or major version. Would recommend tracking minors and check if there are nay migrations touching the currencies and having the bump done on some local environment first if there are doubts. We do not account for manual modifications like this one in the main version of Ghost. That’s why this approach comes with big, bold very not officially supported :slight_smile:

Hey Naz,

Yes, I’m worried that if there is a version update, it might not be worth the effort to make those changes again. Will have to wait for the official support of INR / ₹ :slight_smile:

Cheers

@naz would like to add to JPM’s request to add support for INR. Stripe already supports inr natively, hopefully shouldnt be much work

Just invite your developer / designer friends to use Ghost and like this post → Payment Currency In INR / ₹ - Membership / Subscription – the Ghost team should see more support requirement and hopefully work on it in.