Table of Contents
ToggleIntroduction
Whether you are coming to MemberPress from another membership system you may have need to migrate certain things over. In this article you will learn the basics of how this migration process may look for you.
What you will need
2 – MemberPress Installer Addon
3 – MemberMouse (for the source of export)
Exporting Members CSV from Membermouse
IMPORTANT: In order for the export process to work, make sure that you disable popup blockers in your browser.
Additionally, if you find that the export ‘hangs' while trying to export the entire list, this usually means that a non-UTF8 character has been entered into a field in a member account.
In a situation like this, it's best to export partial lists until you can narrow down the affected account. Exporting by date ranges is one way to do this.
A non-UTF8 character will usually appear in your web browser like this:
If you remove or replace the character, the whole export can be completed.
Follow the steps below to export your members.
1 – From the MemberMouse menu, click on Manage Members:
2 – We need export a certain group of members, for this use the advanced search area to filter the members down:
3 – Once you have the list of members you want to export, click the button Export Members at the top of the screen. This will generate a CSV file that you can download which contains member data for the members currently listed:
Note: Only Administrators will see this button. Sales and Support employees don't have the ability to export members unless specifically granted that permission by the Admin.
The way to grant permission is to log in using the Admin account, go to General Settings in the MemberMouse menu and then click on the Employees tab. Choose the account that you want to be able to export from. Then go to the Additional Permissions area and check the box next to “Allow this employee to export data”. For more information about the options on Employee Accounts, you can reference this article about creating an employee account.
4 – Save the CSV files, you will need them in the next steps.
Users from WordPress Users Dashboard.
MemberPress does not create its own “users” apart from the WordPress Users section, so if the user can be found in your WordPress Dashboard > Users section, that is enough to associate a subscription to them.
Install MemberPress and MemberPress Importer Plugins
The MemberPress importer is a powerful tool that allows you to import important data into your system. The most common uses for the importer is to add users and their subscriptions into MemberPress from a previous membership solution.
1 – Download the .zip file from your MemberPress account area and install / activate it.
2 – You will see new option after MemberPress Importer Plugin install:
Recreate Memberships in MemberPress from MemberMouse
1 – Go to MemberMouse Product Settings:
Here you can find information for recreating in MemberPress Memberships.
Recreating information and for example we will took Gold Product:
2 – Go to Membermouse Memberships:
3 – And click Add New button and fill in information:
4 – Recreate this for all Products:
Configuring the Payments Gateway
The “Payments” tab in the MemberPress options is where you can specify which payment gateways your users can pay with. MemberPress currently supports three of the biggest payment gateways. PayPal, Authorize.net, and Stripe. More payment gateways will be supported as time progresses.
1 – To add a gateway, simply click the + button at the bottom of the page. Each gateway has its own options that must be configured to connect it with your account.
For example I will set Stripe Gateway.
2 – Click the plus button and select the gateway “Stripe”:
3 – Name it whatever you want. This is the name that your users will see when they go to select how to pay.
4 – Go your Stripe dashboard to obtain the necessary keys: test secret key, test publishable key, live secret key, and/or live publishable key.
In Stripe, navigate to API on the left hand menu:
5 – Copy and paste the keys to your MemberPress settings.
6 – Copy your “Stripe Webhook URL” from your MemberPress setup page.
7 – Navigate back to your API settings in Stripe:
8 – Select Webhooks.Select “+ Add endpoint” and paste your unique Webhook into the settings. Make sure to select the correct Live or Test events, that you are on the latest Webhook version, and that you have it set to send all event types.
9 – Update / save all settings.
Creating your CSV Files
With the MemberPress Importer installed you will be ready to start creating your first CSV files to import your data.
CSV stands for, “comma separated values,” which is a very common format used by Spreadsheets. You can create a standard spreadsheet in Excel, Numbers, Open Office, or Google Spreadsheet and then export a CSV file from your spreadsheet.
Note: The CSV should be in Windows CSV Format. If you're using a Mac or some spreadsheet software that is not Microsoft Excel, then you may need to do a “save as” and choose a Windows or Microsoft compatible CSV option.
All of the importers require their own unique data items to be present in the CSV file, but they will all follow a couple of conventions:
A) Each CSV file must have a header row (first row of the file) which contains the name of the field. Everything in the column under the first row will be flagged as being a value for the field defined in the header.
B) The columns of the CSV file don't need to be in any set order. The data fields are determined not by order but by the header name.
This file format is the most important thing when it comes to using our importer. Do NOT think that you will be able to simply export a CSV file from somewhere and then import it directly. That will NOT work.
1 – Go to MemberPress Subscriptions:
2 – And create test Subscription (The user for this subscription must be real user from your Users list):
3 – Now you can export CSV file in right format:
4 – Open this CSV file (for better visualization I’m using Airtable):
5 – Choose Import a spreadsheet and choose your CSV file:
You will see something like this:
Download Sample Subscriptions CSV
Migrating or Importing Users and User Data
The following are the only reasons why you should import a Users CSV file:
A) To import users who are not already on your WordPress site. MemberPress does not create its own “users” apart from the WordPress Users section, so if the user can be found in your WordPress Dashboard > Users section, that is enough to associate a subscription to them.
B) To update user info for users currently existing on your site. Just make sure that you enter the username and email correctly to properly update a user profile.
Important Note: Importing a User CSV file will NOT and CANNOT associate the user with any memberships in MemberPress. To do that you'll need to create either a single transactions CSV file for one-time subscriptions, or both a subscription and a transaction CSV file in that order.
Please be extremely careful to follow the formatting listed below EXACTLY. Failing to do so EXACTLY will result in your file failing to import correctly.
Click here for a sample Users CSV file. With that as your basic template, please see below for the required and optional columns of your CSV file.
Required Columns:
- username — This is the User's user_login / username field. This is just a small text
- email — This is the User's user_email. This must be a properly formatted email or the record could fail
Optional Columns:
- role — This is the WordPress user role. Can be ‘subscriber', ‘contributor', ‘author', ‘editor' or ‘administrator'. Defaults to ‘subscriber,' even if you don't specify otherwise with this column header.
- password — Allows you to set the users password. This password will be encrypted/hashed and stored in the database.
- first_name — First name of the user. Can be any small string of text. Defaults to blank.
- last_name — Last name of the user. Can be any small string of text. Defaults to blank.
- website — Website for the user. Can be any small string of text. Defaults to blank.
- address1 — Address Line 1 for user. Can be any small string of text. Defaults to blank.
- address2 — Address Line 2 for user. Can be any small string of text. Defaults to blank.
- city– City for user. Can be any small string of text. Defaults to blank.
- state — State for the user. Can be any small string of text. Defaults to blank.
- zip — Zip Code for the user. Can be any valid zip code string. Defaults to blank.
- country — Country for the user. Can be any small string of text. Defaults to blank.
- *usermeta* — Use the slugs for the Custom User Information Fields you created in the options here to import custom meta for your members. Please see our additional instructions for these field types below.
- registered — The registration date of the user. Must be in format “YYYY-MM-DD hh:mm:ss”. Defaults to the current time during import.
Again, if the username of the user already exists in the system then the user record will be updated with the information in the CSV file associated with the username.
1 – Go to Members and Export table as CSV:
2 – And Import Members CSV to Airtable:
Creating and Importing Subscriptions CSV file
All you need to do is copy data from Members CSV to Subscriptions CSV, but in the right columns:
For example:
And Export this file in CSV format:
1 – Go to MemberPress Importer and Upload this CSV:
2 – Go to Subscriptions:
Creating Rules
Based on your content rules access you can create the rules you need in MemberPress.
1 – Go to Rules and Add New:
2 – Configure the conditions that you want for access. For example:
Testing
Before deactivating MemberMouse test everything. The best option is to use 2 plugins at the same time for few weeks.
In conclusion
Remember if you have existing subscriptions for real customers make sure you understand everything clearly above prior to taking action. Failure to take the proper steps outlined above could result in your customers being unable to be billed going forward or losing access to your membership.
If you have any questions please ask them in comments.
Hello Stanislav, Thanks for the article. This is the first time I see an example to move from Membermouse to Memberpress. I am considering this migration because with Membermouse, we are stuck with SAQ A-EP PCI compliance which is a pain. Memberpress supports the newer Stripe checkout methods so we can get away with SAQ A. When you import the Subscriptions CSV file, does this create all the automatic payments in Stripe? I was also wondering, you recommend to run two plugins for a while. When you do this, you’ll run into issues with duplicate payments. Did you guys do… Read more »
Hello Rene,
Thank you for reading the article.
And thanks for the question.
It was a test website, but I want to please you – I am now writing the second part of this article, which will highlight in more detail the process of migrating a large number of subscribers and testing proper operation (including Stripe).
I plan to finish it before the end of the month, I can also notify you here.
Regards,
Stan.