Skip to content

How to switch Stripe accounts after user connected/merchant accounts have already been created #1018

@Youdaman

Description

@Youdaman

Not sure if this is something that can be solved on the Pay gem side of things or requires Stripe API kung fu.

When I updated my stripe private/public keys in the credentials file (switching from my AU Stripe account to my US Stripe account) I got the following error when trying to generate a login link for users with current_user.merchant_processor.login_link:

The provided key 'sk_test_*********************************************************************************************yvvs1C' does not have access to account 'acct_1PUI8wPp104M9HJT' (or that account does not exist). Application access may have been revoked.

I was hoping that pay_merchant/user accounts would be able to just switch to using the new platform, but it seems they're associated/accessible only with the platform Stripe account that created them (which makes sense I guess).

Not sure what my best way forward here is other than to somehow wipe/reset the pay_merchant data for each user and have them sign up fresh with the new platform, essentially creating new connected accounts and abandoning the old ones, or whether there's a way to let the existing connected accounts operate under the new platform.

According to this Stripe support page, Connected accounts cannot be copied over, only customers: https://support.stripe.com/questions/data-that-can-be-copied-between-stripe-accounts

Individual charges, invoices, plans and subscriptions, coupons, events, logs, SEPA sources, Bacs PaymentMethods, Connected accounts, and Guest customers do not copy over.

Wondering whether there's a way where Pay detects it's hooked up to a different account and proceed accordingly by making users "re-connect"/onboard, but then I guess that opens a whole other can of worms with allowing multiple pay_merchant account details per user which is likely beyond scope.

Any advice would be appreciated!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions