What happens to active subscription contracts' billing cycles and payment tokens when migrating subscribers between any platform and Shopify's subscription data model?
Short answer
An imported subscription contract starts again at billing cycle 1 (Shopify's billing cycle guide, October 2026), bills on whatever nextBillingDate your app sets, and keeps its payment token at the issuing processor. Shopify calls nextBillingDate "independent of billing cycles" and "not managed by Shopify" (Shopify's developer reference), so nothing in Shopify catches a wrong date. Tokens bill only while that processor stays connected as a secondary gateway (Shopify Help Center).
- Next billing date on import
- nextBillingDate, set by your appRequired on every imported contract; Shopify calls it independent of billing cycles and not managed by Shopify (October 2026).Source: Shopify developer docs (SubscriptionContractAtomicCreateInput)
- Billing cycle count
- Restarts at cycle 1Shopify indexes cycles from the contract's first version, so terms counted in cycles, such as a minimum number of cycles, count again from the import unless the import adjusts them (Deploi reading, October 2026).Source: Shopify developer docs (About subscription billing cycles)
- Processors Shopify bills tokens through
- Stripe, Braintree, PayPal Express, Authorize.netAs a secondary gateway for existing contracts; each card reaches the primary gateway only when its owner updates billing details, which can take months or even years (October 2026).Source: Shopify Help Center (Migrating payment methods to your Shopify account)
- Card-number migration into Shopify
- Plus or Enterprise, credit cards onlyShopify Professional Services, a paid service; no PayPal billing agreements, wallets such as Venmo, Apple Pay or Google Pay, or bank account information (October 2026).Source: Shopify Help Center (Migrating payment methods to your Shopify account)
Deploi’s call
An imported subscription contract keeps its payment token at the processor that issued it and restarts its billing cycles at 1, by Shopify's own documentation. So decide the gateway question before the platform question. Whether you can keep the processor is upstream of which subscription app you choose, and reversing that order is how migrations acquire a surprise re-collection campaign halfway through.
CustomizeKeep the old processor as a secondary gateway when
- It is Stripe, Braintree, PayPal Express or Authorize.net, the four processors Shopify migrates payment information from (Shopify Help Center, October 2026).
- Most subscribers pay by card, which Shopify's import takes from Stripe, Braintree and Authorize.net (Shopify developer docs, October 2026).
- You can keep that processor account open for the months or years a slow drip takes.
- Your app vendor confirms in writing which payment methods transfer, the answer our subscription migration record says decides half the risk (October 2026).
BuyBuy a card-data migration when
- Your store is on Shopify Plus or Enterprise and you want the old gateway switched off, because Shopify Professional Services migrates card numbers as a paid service (Shopify Help Center, October 2026).
- Your processor isn't one of Shopify's four, so the cards move to Stripe or Authorize.net first, as Skio advises (Skio Help Center, October 2026).
- The receiving processor meets Payment Card Industry (PCI) Data Security Standard Level 1, the only kind Stripe exports card data to (Stripe, October 2026).
Basis: Recharge Alternatives: Build or Buy the Subscription Migration?, our Build vs. Buy decision record, scored CUSTOMIZE.
Where does an imported contract's next billing date come from?
An imported contract's next billing date comes from nextBillingDate, a required field your subscription app sets on each contract. Shopify's reference calls the field "independent of billing cycles" and says it "stores metadata set by the apps, and thus not managed by Shopify" (Shopify developer docs, October 2026). Shopify doesn't charge on that date by itself either: "You need to create billing attempts to trigger the billing schedule of a contract" (Shopify developer docs, October 2026). So a contract imported with the wrong date bills on the wrong date, confidently, with no cycle arithmetic in Shopify to catch it. The date is one detail in the full order for moving an active subscription program, where each contract is recreated after its customer and payment method.
What happens to the billing cycle count on an imported contract?
The billing cycle count starts again at 1 on an imported contract. Shopify says "Each billing cycle is indexed from when the first version of the contract is initialized", and an imported contract is a new one (Shopify developer docs, October 2026). The billing policy carries the rhythm: interval, intervalCount, optional minCycles and maxCycles, and anchor dates for the interval calculation (Shopify developer docs, October 2026). Import the billing policy and the nextBillingDate from two different exports and the subscriber is charged twice or not at all.
Anything counted in cycles restarts too, unless the import adjusts it. A three-cycle minimum on a subscriber who has already paid twice starts over, and a price step set to begin after cycle 2 applies again (Deploi reading of Shopify's cycle indexing). Shopify adds that a pricing policy "serves as a guide for apps" and that "the price of the line item does not update automatically" (Shopify developer docs). So grandfathered prices belong on each contract line.
Do payment tokens move to Shopify?
Payment tokens don't move to Shopify: they stay with the processor that issued them, and Shopify bills them through that processor. A secondary gateway, "also known as the legacy subscription payment gateway", bills existing contracts. Shopify adds: "Your customers' payment methods are held by that processor, outside of Shopify" (Shopify Help Center, October 2026). Shopify connects four processors this way: Stripe, Braintree, PayPal Express and Authorize.net. New contracts, and contracts updated after migration, charge the primary gateway instead.
A payment method moves to the primary gateway only when its owner updates their billing details, so Shopify says this slow drip "can take months or even years" (Shopify Help Center). The import is narrow too. Shopify takes only credit cards from Stripe, and only credit cards and Apple Pay through Braintree's import. PayPal methods held in Braintree move only when extracted and recreated as PayPal Express billing agreements, and Google Pay methods don't move (Shopify developer docs, October 2026). Between two Shopify stores the rules change again: see moving subscriptions from one Shopify store to another.
Can card data move when the processor changes?
Card data can move when the processor changes, even though tokens can't, through a Payment Card Industry (PCI) compliant export from the old processor. Stripe says it will "work with your new processor's team to securely transfer your credit card data" (Stripe, October 2026). Stripe sends card data only to a processor at PCI Data Security Standard Level 1, and it excludes payment details customers saved with Stripe's Link checkout. Braintree imports and exports card data with no fee, but says "we cannot migrate subscription or transaction information" (Braintree, October 2026).
Into Shopify, Shopify Professional Services migrates card numbers as a paid service, on Shopify Plus or Enterprise only (Shopify Help Center, October 2026). If your processor isn't one of Shopify's four, Skio's advice is to move the payment data first to a compatible gateway "such as Stripe or Authorize.net" (Skio Help Center, October 2026). So the processor question comes before the platform question, because it decides which of these routes is open to you.
Which payment methods break when the account changes?
PayPal billing agreements, wallet tokens and bank-account debits break when the account or processor behind them changes, because each is tied to the account or processor that created it. Shopify: "PayPal billing agreements belong to the account that created them. If the new account can't use the previous account's agreements, then existing renewals can fail even when new PayPal checkouts work" (Shopify Help Center, October 2026). Shopify Professional Services can't migrate PayPal billing agreements, wallets such as Venmo, Apple Pay and Google Pay, or bank account information. Braintree excludes Apple Pay and Google Pay from its exports, because their network tokens are "not transferrable between providers" (Braintree, October 2026). Braintree also says a stored bank debit is an agreement "to be charged only by that processor", which is why it asks merchants to accept extra legal terms before it migrates one.
Those subscribers re-enter a payment method, and timing matters. Shopify warns that repeated failed renewals can pause, skip or cancel a subscription, and "Updating a payment method can't restore a cancelled subscription contract" (Shopify Help Center). So ask before the first renewal, with subscriber messages that don't read as a cancellation, and hold your migration agency to a card-retention rate written into scope.
When should the payment side of the migration wait?
The payment side of the migration should wait whenever another payment change would share its window, because each change hides the other's failures.
Deploi’s point of view
Our own position, from building on Shopify. Kept apart from the sourced facts above.
- What we’ve seen
- The anchor date is where the errors land. Cadence imports cleanly because it is a rule; nextBillingDate is a value, and values arrive from spreadsheets that were exported three days before anyone ran the import.
- Where we disagree
- The category talks about "migrating payment tokens" as though tokens are the thing that moves. The token stays exactly where it is. What moves is a reference to it, and only inside the same processor relationship, which is why the honest question is never "can we migrate tokens" but "can we keep this processor", and if not, "who will export the card data".
- What this page adds
- the two fields that carry the risk (nextBillingDate, which Shopify leaves to the app, and the payment method reference), the billing cycle count that restarts at 1 on every imported contract, the card-data exports processors offer when tokens can't move, and the PayPal billing-agreement exception.
Decision records behind this answer
When this answer changes
- Shopify starts managing nextBillingDate itself, or lets an imported contract keep its old cycle count.
- Shopify adds a processor to the four it bills through a secondary gateway, or opens card-number migration below Plus.
- Shopify Professional Services starts migrating PayPal billing agreements or wallet payment methods.
- Stripe or Braintree changes which processors it will export card data to.
- PayPal lets billing agreements move between accounts.
Related questions
This follows from How do I migrate an active subscription program (Recharge, Skio, or a legacy platform's native subscriptions) during a full platform replatform?
- How do subscription discount/pricing-lock contracts (grandfathered pricing) get preserved when migrating the underlying subscription data to Shopify?
Grandfathered subscription pricing survives a migration to Shopify only when it is written onto each contract line at import, because the line, not the plan, holds the price.
- How do we migrate active subscription contracts (Recharge, Skio, or native Shopify Subscriptions) from one Shopify store to another during consolidation?
Active subscription contracts move between two Shopify stores only as far as their saved payment methods do, because each store keeps its own.
- How do we communicate a subscription-platform migration to active subscribers so they don't think their subscription was cancelled or their payment failed?
A subscription migration needs four messages, starting 14 days before cutover, because unexplained changes read as a cancellation (Deploi practice).
- What's the honest churn-risk estimate for a subscription-program migration, and what benchmark should we hold the migration agency to?
Subscriber loss in a subscription-platform migration runs 2 to 5% in community-reported cases, per the July 2026 research behind Deploi's migration record.
Sources
Every figure on this page traces to one of these. Official and vendor pages are checked on the date shown; Deploi records are our own published decisions.
- Shopify developer docs, SubscriptionContractAtomicCreateInput
- Shopify developer docs, About subscription billing cycles
- Shopify developer docs, SubscriptionBillingPolicyInput
- Shopify Help Center, Migrating payment methods to your Shopify account
- Shopify developer docs, Migrate customer information to Shopify
- Shopify developer docs, subscriptionBillingAttemptCreate
- Stripe, Request a payment data export
- Braintree, Data Migration overview
- Skio Help Center, Migrating subscriptions from outside of Shopify (Woocommerce, BigCommerce, Magento, Custom solutions)
- Shopify developer docs, Migrating existing subscription contracts to Shopify
- Deploi Build vs. Buy, Recharge Alternatives: Build or Buy the Subscription Migration?