# Migrate from PayPal Express

> Source: https://help.easysubscription.io/docs/migrate-from-paypal-express/
> Last updated: 2026-10-22

AI Summary

To migrate from PayPal Express to Shopify with Easy Subscriptions, first confirm your merchant account is approved for PayPal reference transactions, then export your existing subscription data, format it with Easy Subscriptions’ CSV template, and import it through the app’s Import Subscription tool. PayPal billing agreement IDs must begin with B dash, and any account still pending PayPal approval for reference transactions needs to resolve that with PayPal before importing. The setup process typically takes under an hour, not counting import processing time and PayPal approval wait times.

## **Overview**

Merchants using PayPal Express for recurring billing can migrate existing [**subscription contracts**](https://easysubscription.io/glossary/subscription-contracts/) to Shopify using Easy Subscriptions. Unlike **[Braintree](https://help.easysubscription.io/docs/migrate-from-braintree/)** or **[Authorize.net](https://help.easysubscription.io/docs/migrate-from-authorize-net/)**, **[PayPal Express](https://help.easysubscription.io/docs/migrate-from-paypal-express/)** does not connect as a secondary payment gateway through a redirect link. Instead, Shopify needs confirmation that PayPal Express is enabled on your store and that your account is approved for reference transactions, which is what allows recurring charges to run without the customer present at checkout each time.

This guide assumes you have already completed Shopify’s core Subscriptions API migration. If you have not, complete that step first, since the PayPal specific process described here depends on it.

Before starting, pause billing in your current [**subscription app**](https://easysubscription.io/). Pausing prevents customers from being charged twice while subscription contracts are being transferred.

## **Step by Step Migration Guide**

### **Step 1: Verify PayPal Express Is Approved for Reference Transactions**

Check your **[Shopify Payments](https://easysubscription.io/blog/shopify-payment-gateways-for-subscription-businesses/)** settings to confirm PayPal Express is enabled and that your account status for reference transactions shows as approved. This status can appear as one of three states:

- **Enabled:** Your account is ready to process subscription payments.
- **Pending:** Shopify is still determining your eligibility.
- **Disabled:** You need to contact PayPal directly to request approval for reference transactions before you can proceed.

If your status shows disabled, resolve that with PayPal first. Importing subscription data before your account is approved will result in failed payment charges even if the import itself succeeds.

### **Step 2: Open Easy Subscriptions**

From Shopify admin, go to Apps, then [**Easy Subscriptions**](https://apps.shopify.com/easy-subscription).

### **Step 3: Go to Import Settings**

Inside Easy Subscriptions, click Settings, then find the Import Subscription section.

### **Step 4: Download the CSV Template**

Click Download to get the sample CSV file. This template defines the exact column structure Easy Subscriptions requires for import.

### **Step 5: Export Existing Subscription Data**

Export subscription data from your current PayPal Express connected app. Include customer details, product names, billing intervals, and cycle dates.

### **Step 6: Format the CSV File**

Match your exported data to the sample template’s columns, including Subscription ID, customer info, and billing intervals. Each customer’s PayPal billing agreement ID must begin with B dash. Rows with an incorrectly formatted or missing billing agreement ID will fail to import.

### **Step 7: Import the Data to Shopify**

Return to the Import Subscription section in Easy Subscriptions and upload the completed CSV. Import time depends on how many subscribers you are importing, usually a few minutes for most stores.

### **Step 8: Review the Import Logs**

Download the Import Logs to confirm the import completed correctly. Missing or mismatched entries, including invalid billing agreement IDs, appear here so you can fix and re-import them.

### **Step 9: Resume Billing**

Once the import log confirms a clean migration, reactivate billing. Recurring orders are now manageable directly from Shopify admin through Easy Subscriptions.

## **Tips for a Smooth Migration**

- Keep billing paused until the import log confirms a clean migration.
- Resolve any pending or disabled reference transaction status with PayPal before importing, not after.
- Double check that every billing agreement ID in your CSV begins with B dash.
- Use a fresh copy of the CSV template each time, since Easy Subscriptions may update the required format.
- Contact support if import logs show unresolved errors after a re-import attempt.

## **Frequently Asked Questions**

****What are reference transactions and why do I need them approved?****

Reference transactions are what allow PayPal to charge a customer’s saved payment method automatically for recurring billing, without the customer approving each charge individually. Shopify requires this approval before subscription payments can process.

****What does it mean if my reference transaction status shows pending?****

Pending means Shopify is still determining your eligibility. Wait for this to resolve to enabled before importing subscription data, since payments will fail on a pending or disabled account.

****What format does a PayPal billing agreement ID need to be in?****

Valid billing agreement IDs begin with B dash. Any row with an ID that does not follow this format will fail during import.

****Do I need Shopify Payments to migrate from PayPal Express?****

No. PayPal Express can operate as its own approved payment gateway rather than a secondary gateway tied to **[Shopify Payments](https://help.shopify.com/en/manual/payments/shopify-payments)**, as long as reference transactions are enabled on your account.

****Will my customers be double billed during migration?****

Only if billing is not paused beforehand. Pause billing in your current app before starting the CSV import, and do not resume it until the import logs confirm a clean import.

****What happens if some subscriptions fail to import?****

The Import Logs flag exactly which rows failed and why. Common causes include incorrectly formatted billing agreement IDs and mismatched CSV columns. Fix the flagged rows and re-upload the file.

****How long does the migration take?****

Preparing and importing the CSV file typically takes under an hour. If your reference transaction approval is pending or disabled, factor in extra time for PayPal to resolve that first.
