Migration Guide
Import your existing subscribers from LaunchPass, Upgrade.chat, PayRole, or any generic CSV file.
Before You Start
Important Note
- Export your subscriber data from your current platform as a CSV file
- Create the corresponding package(s) in our dashboard first — the importer maps subscribers to existing packages
Supported Platforms
LaunchPass
Export your member list from LaunchPass. The expected CSV columns are:
| Column | Description |
|---|---|
Discord ID | Subscriber's Discord user ID (required) |
Email | Subscriber's email address |
Tier | LaunchPass tier/plan name |
Start Date | Subscription start date |
Status | active, cancelled, etc. |
Tier names are auto-matched to your packages by name. You can also provide explicit tier-to-package mapping or select a default fallback package.
Upgrade.chat
Expected CSV columns:
| Column | Description |
|---|---|
Discord User ID | Required |
Product | Product/tier name |
Purchase Date | When the subscription started |
Expiry | Expiry date (used to determine if still active) |
Email | Subscriber's email |
PayRole
Expected CSV columns:
| Column | Description |
|---|---|
User ID | Discord user ID (required) |
Subscription | Subscription/plan name |
Start | Start date |
End | End date |
Amount | Payment amount |
Generic CSV
For any other platform, use the generic CSV importer. The minimum required column is:
discordUserId— the Discord user ID (17-20 digit snowflake)
Optional columns:
packageId— Convex package IDemail— subscriber emailstartDate— subscription start datestatus— active, cancelled, expired, paused
Import Process
Navigate to Migrate
Select Platform
Preview and Map
Import
After Import
- Role sync — run
/syncin your Discord server to assign roles to imported members - Set up billing — imported subscribers don't have Stripe subscriptions; set up new checkout flows for future billing
- Verify — check the Customers page to ensure all data imported correctly
Status Mapping
| Input Status | Mapped To |
|---|---|
| active, trialing | active |
| cancelled, canceled, expired, inactive | inactive |
| ending, cancelling | ending |
| paused | paused |
Troubleshooting
Missing Discord User IDs
The Discord User ID is a numeric snowflake (e.g., 123456789012345678). If you only have usernames, you'll need to get the user IDs from Discord (enable Developer Mode → right-click user → Copy User ID).
Package mapping failures
If tier/product names don't match your packages, select a default package. All unmapped rows will use it as a fallback.