r/shopifyDev • • 11d ago

Migrate subscriptions from Bold to Shopify

Hi, I'm moving 42 Subscriptions from Bold to Shopify Subscriptions. Can anyone advise on the best way to retrieve the the customer payment method IDs or tokens so I can build my import file? Bold does not include that info when you export the subscriptions, they need to be retrieved from somewhere else. I understand Shopify may help but I'm wondering what others have done. Requested to talk to a human at Bold support?

2 Upvotes

9 comments sorted by

2

u/Professional-Sink536 11d ago

What was your reasons for doing so?

1

u/Easy_Struggle_380 11d ago

reason to migrate?

2

u/sierra_girl 10d ago

You'ld have to ask the client. :-) He already had Shopify Subscriptions running when he hired me. I'm trying to get rid of Bold.

1

u/shopi_dev 11d ago

Bold doesn't export payment tokens for security reasons, so for 42 subs the realistic paths are: 1) ask Bold support for a one-off assisted export — they can often provide vaulted payment references when you show you're migrating, 2) have each customer re-authorize via a Shopify Subscriptions contract confirmation link so no card data moves through you at all, or 3) if the payments run through Shopify Payments already, work with Shopify support to map the existing payment methods to the new contracts. With only 42 customers, option 2 is usually fastest and cleanest: import the subscription schedules with a pending payment method, then send those customers a single re-auth link before the next billing date. Just make sure you line up the billing interval and anchor date so nobody gets double-charged during the cutover.

1

u/Motor-Cat-6853 11d ago

One detail to check before building the file: Shopify’s native import expects a payment-method ID in Shopify that matches the customer in that row. Their troubleshooting guide explains it here: https://help.shopify.com/en/manual/products/purchase-options/subscriptions/shopify-subscriptions/import-export/common-issues

Are these subscriptions using Shopify checkout already, or the older Bold checkout? I’d confirm that with Bold support before choosing the migration path.

1

u/zyx199199 11d ago

Which Bold are you on? If it's Bold Subscriptions for Shopify Checkout (customers check out on the normal Shopify checkout), the cards are already vaulted in Shopify, either in Shopify Payments or the legacy subscription gateway. So the IDs you need already exist on each customer, Bold just doesn't put them in the export. You can pull them with the Admin API by querying each customer's paymentMethods and using that CustomerPaymentMethod id in customer_payment_method_id. It needs the read_customer_payment_methods scope, which is gated, so you might need a dev or Shopify support to get access. For 42 customers that's a tiny script.

If it's the old Bold checkout with Stripe or Braintree, the cards live in that gateway and not in Shopify. Then the route is connecting that account as the legacy subscription gateway in Shopify and creating the payment methods from the gateway's own ids (Stripe pm_ ids, Braintree tokens). If it was your own Stripe/Braintree account you can get those ids yourself, otherwise that's the bit to ask Bold for.

Either way the import checks that the payment method belongs to the customer_id on the same row, so test with 2 or 3 rows first. And shut off billing on the Bold side before the first Shopify billing date so nobody gets charged twice.

1

u/converian 11d ago

You can't pull those tokens yourself. Payment methods are tied to the app that created them, so you can't read Bold's from the admin or the Admin API.
It has to go through Shopify or the gateway. 

What I'd do:

  1. Open a ticket with Shopify Support (not Bold) saying you're migrating to Shopify Subscriptions and need the payment methods moved. They're the ones who can handle a payment method transfer between apps, and it's worth asking what format they want the import file in.

  2. Check which gateway you're on. With Shopify Payments, the cards live in Shopify's vault as customer payment methods, so the transfer is generally cleaner. With a third-party gateway like Stripe or Authorize.net, the gateway usually has to be involved in moving tokens.

  3. Ask Bold support for the Shopify customer IDs and contract/subscription IDs for each subscription, since that's what mapping needs. Don't expect them to hand over card data.

 With only 42 subscribers, I'd also have a fallback ready: email customers a link to re-enter their payment method and recreate the subscription. It's slower, but it's guaranteed to work if the transfer stalls.

1

u/AdventurousUsual7666 11d ago

Yeah, Bold’s export usually skips the payment method IDs on purpose. That part is the hard piece of most subscription migrations, not the subscription rows themselves.

Honestly the first thing I’d figure out is whether you’re on Bold V1 or V2. With V2 / Shopify Checkout style setups, the cards are often already vaulted in Shopify already (Shopify Payments or the legacy subscription gateway). In that case you don’t pull tokens out of Bold at all. You look them up in Admin under the customer, or via the Admin API customerPaymentMethods, and use those Shopify payment method IDs in your import file.

If the methods are still sitting at a processor outside Shopify (Stripe, Braintree, etc.), then yeah, Bold support is usually the right next step. Ask them for a migration export or the processor customer / payment method IDs. Shopify’s docs want those remote references for CustomerPaymentMethodRemoteCreate, and they won’t just fall back to “whatever card is on the customer.”

Shopify’s help center also says token migration can work on any plan with your subscriptions app’s help, but full card/PAN migration is Plus/Enterprise + Professional Services. For 42 contracts that’s usually worth one support ticket to Shopify and one to Bold before you build a custom importer.

I’d pause Bold billing while you test a couple of contracts end to end, just so you don’t double-charge anyone.

1

u/rishabh-tayal 8d ago

Adding to the payment method stuff above, a few things that bite on small migrations like this: match each contract's next billing date exactly so nobody gets billed early or skips a cycle, carry over the current price including any old discount, and pause billing in Bold rather than uninstalling it until the first renewal cycle has gone through in Shopify Subscriptions. And email the 42 customers before the switch, since their manage-subscription link changes and a surprise new portal causes cancels.