Anyone changed Stripe account to a new country and moved subscriptions?

Basically no more to it than the title. Has anyone experience what happens if you change your Stripe account to a new country?
The explanations given by Stripe support seem hell complicated when it comes to how you are supposed to move subscriptions to your new account (you cannot change Stripe account country - so you need to move subscriptions from the old account to the new account).

or is there way to have s2member work with 2 stripe accounts in parallel - one accepting the old subscriptions - the other one for everything new?

1 Like

@openmtbmap I am in a similar boat. I’d love to know if you figured anything out and are kind enough to share your experience! Any advice?

@clavaque Do you have any recommendations on how to transition to another Stripe account if there are ongoing subscriptions?

Thanks!

I contacted stripe and they told me what to do but I didn’t fully understand it. They will start some process then it takes a week or so but I didn’t understand their docs for developers

I for now kept using the old account because it seems to me you cannot move subscriptions. So far I was able to get my money transferred out - but it seems Stripe is as â– â– â– â–  as paypal in this regard.

(06:52:54 AM) Gracey: To answer your inquiry, we can copy over Customer and Credit Card (and/or ACH) details which you can see the details here https://support.stripe.com/questions/copy-existing-account-data-to-a-new-stripe-account
(06:53:46 AM) Me: well yes - so according to:
(06:53:48 AM) Me: Stripe is able to do one-time copies of customer data across accounts. Reach out to Stripe Support to get this process started.
(06:54:47 AM) Me: I want you to copy all subscriptions from this account:1 - to be moved to my new account on 2- plus a date from which onwards the subscriptions will arrive at the new account. I understand that the old payments are in the old account
(06:55:42 AM) Gracey: Yes you are correct. We can assist you in migrating or copying the information from your Stripe account.
(06:55:47 AM) Me: E.g. this is not explained at all how to do: Add subscriptions to your copied-over customers on the new account. Customers that were copied over will have the same customer ID as in the original account.
(06:56:01 AM) Gracey: However, we cannot copy over Subscriptions, Subscription logic, Charges, Invoices, Plans, Coupons, Events, Logs, SEPA sources, Bacs PaymentMethods, Connected accounts, or additional objects
(06:57:08 AM) Gracey: With that, you will need to have subscriptions recreated in the new account. You can check these document guides that we have for your reference.

And here:

Thanks for getting in touch with Stripe Data Migrations! We’re glad to help you out.

It’s pretty straightforward for us to migrate customers and saved cards from one Stripe account to another. We also have a support article that outlines exactly what can and cannot be copied over:
https://support.stripe.com/questions/how-can-i-migrate-to-a-new-stripe-account

In short, we can copy over Customer and Credit Card (and/or ACH) details.

We cannot copy over Subscriptions, Subscription logic, Charges, Invoices, Plans, Coupons, Events, Logs, SEPA sources, Bacs PaymentMethods, Connected accounts, or additional objects. I recommend reading through these references if you have subscriptions to recreate in the new account:


Let’s define some vocabulary that will make the copy process easier to talk about. We’ll consider the account that holds the customers the “source account”, and the account that you’d like to copy them into the “destination account”.

Customer IDs will remain the same between source and destination but card IDs will change. Even though card IDs change, they will still refer to the same card details (i.e., card number, expiration date, address, etc). Customers will still exist in the source account, so you can continue to charge them there. Customers will not be informed that this copy is taking place in the background.

Before we can copy over any information, we’ll need to verify the migration for both accounts.

1 Like

Then there is this:
https://support.stripe.com/questions/recreate-subscriptions-and-plans-after-moving-customer-data-to-a-new-stripe-account

But I don’t know how and what to do.

It would be easiest if s2member supported 2 Stripe accounts/2 paypal accounts. So you could migrate all new payments to new account while trying to get the old subscriptions out from the old account (somehow illegally and I think not possible starting next year anymore).

1 Like

Interesting. I was told by their customer support service they help us through the transition?

Keep us posted, please. Many other s2Member users, including myself, might benefit in the future. :hugs:

Well the above conversation is exactly what they understand as helping. But there is no description on the second page on how to actually move subscriptions once the customer data has been copied…

So I never advanced as long as I mange to get my money out of paypal/stripe which seemingly gets harder and harder even if you transfer it in small amounts (receiving banks asks for proof where the money is from and then you have different addresses on the accounts…)

So by any means - if you can move the subscriptions do so - I don’t find where and how I would do the transfer via API or dashboard (that sounds horrible)

1 Like

The problem is, your not allowed an account in another country than your domicile country. If your company is based in country A, cannot open account in country B at PayPal, or can you?
Because you can transfer the account to another name or company. That way there would be no need to change the account. If I can take over account from old country A with company from new country B (account stays in country A) I would be all set.

1 Like

@openmtbmap @thesimarchitect I am working with Stripe Transfer who specialize in this sort of move. Stripe Transfer seems to have the Stripe process figured out and have done this many times, but have not worked with an s2member setup before. I believe Stripe will move the customers to the new account on request, but you will need to recreate the products and plans and move the subscriptions yourself, whether manually, with a script, or with the help of Stripe Transfer. The customer_id will stay the same, but all the subscr_id will change.

@clavaque If you could please help out with a few questions about s2member it would be a great help for me and the others on this thread:

(1) I see that subscriber id is stored in wp_usermeta under meta_key="wp_s2member_subscr_id". If we simply update wp_s2member_subscr_id to the new values, will s2member continue to work properly with future payments, cancelations, etc?
(2) The subscr_id is also stored in wp_s2member_ipn_signup_vars, but the name suggests we don’t need to update those. Is that correct?
(3) Is subscr_id stored anywhere else that we need to know about?

Thank you so much!

1 Like

Great Info, now that is much better than the answers I got from stripe 2 years ago

1 Like

@openmtbmap @thesimarchitect @clavaque We tried a test on our staging environment where we made a subscription with the old Stripe account then moved it to the new stripe account. Then we updated the s2member wp_s2member_subscr_id value in wp_usermeta with the new subscriber id and changed s2member’s Stripe API keys to the new Stripe account.

Then we had the test account use s2member’s ss_s2member_cancel_billing_form() to cancel billing.

We see in Stripe’s webhook log that customer.subscription.updated is successfully sent with a 200 response by our site.

But the cancelation does not result in an EOT being set by s2member.

We repeated the test again, this time also updating wp_s2member_first_payment_txn_id to the new subscription id. We go the same result.

Any help would be greatly appreciated. Thanks!

1 Like

Could you activate advanced debugging logs and look for a difference where it fails?
I really hope you can find the culprit I want to change my stripe subscriptions as soon as possible too

They are not from Stripe, they are a third party paid developer service. Always be careful with those services. I wonder what they do that you can’t do by yourself using what you have and the official Stripe Support?

There’s hidden information in the database. :grimacing:

Once you edit that information (the one we can see) you have it visible but it doesn’t work with s2Member routines. It uses another copy of the original subscription information stored in another field.

Try exporting the version of your user database “ready for reimportation” to see that information.

Any updates on the progress? Did you solve it?

1 Like

Are you having problems?

These migrations can be a headache, I feel for you guys. I went through something similar years ago when I moved countries and ended having to create new accounts for the new country. I didn’t have subscriptions going, though, since I only make one-time charges.

It may be possible to keep using the PayPal account from the previous country, though. What’s not so easy is getting the money from it if you don’t have a bank account in that same country. I had to start using the new country PayPal account to be able to get the money out.

I still have the previous Stripe account to check any old payment details, because I couldn’t migrate that, but all new payments come through the new one.

I’m afraid that subscriptions would need to be recreated, and it couldn’t be done without the client’s participation, since he’d have to re-authorize future off-session charges to the card for it, and do a new 3DS authentication.

Those signup vars are important too, s2 will normally ignore Stripe’s notification if it can’t match it with those vars. I’m studying the possibility of removing this check, or have a way around it, to reduce the complexity of migrations in the future.

2 Likes

From next year EU regulations implement strict KYC rules for payment procesossors identical to banks! It will be impossible to keep using accounts from another country!

Please add a mode to remove all data that isn’t shown in the user profile!

I think for PayPal they aren’t checked, right?

And right now it’s not about you not able to transfer money out, that’s possible as long as the name is identical. It’s about the receiving bank asking for proof where the money is from and terminating your bank account if it doesn’t match your new business address and name which of course is impossible in another country!

1 Like

It would be nice for the system to only check the sub_ thing stored in the subscription ID field. Using that complex field that has tons of stuff and is invisible to us causes many problems in my humble opinion.

I frequently re upgrade users manually by typing their cus_ and sub_ codes but your plugin seems to ignore them and use that other field instead. :grimacing:

Okay, calm down.

If you run a legitimate business and you pay your taxes where you have to, you should be fine.

You can’t just drop your existing subscribers and let them involuntarily churn. When you move, if you can’t transfer them, you likely want to keep them active as well as your older account.

Check with your payment processor how it’s done.