Complete guide to installing, configuring, and using every feature of the plugin. From basic setup to advanced external site memberships.
1. Download the plugin ZIP file.
2. Go to WordPress Admin > Plugins > Add New > Upload Plugin.
3. Upload the ZIP and click Install Now.
4. Click Activate.
5. Navigate to WooCommerce > MP Sub Bridge to configure settings.
The plugin automatically creates its database table on activation. No further setup is needed to get started — just configure your products.
Get your first automatic membership creation working in under 5 minutes:
Step 1 — Create a MemberPress Membership
In MemberPress > Memberships, create at least one membership level (e.g., “Gold Membership”) with your desired access rules and expiration.
Step 2 — Configure a WooCommerce Product
Edit any WooCommerce product. Click the MemberPress tab in the Product Data section. Check Enable MemberPress Membership, select your membership level(s), and optionally set a price override.
Step 3 — Place a Test Order
Purchase the product through your store. Once the order reaches the configured status (default: Completed), the membership is created automatically.
Step 4 — Verify
Check WooCommerce > MP Sub Bridge > Activity Log to see the membership creation entry. You can also verify in MemberPress > Members that the customer now has an active membership.
Navigate to WooCommerce > MP Sub Bridge > Settings. All settings are grouped into three sections:
{first_name} — Customer’s first name
• {last_name} — Customer’s last name
• {username} — Their WordPress username
• {login_url} — Your site’s login page URL
• {site_name} — Your website name
• {membership_name} — The membership level(s) assigned
• {order_id} — WooCommerce order number
New users also receive their generated password in the email. Existing users see “(your existing password)” instead.Each WooCommerce product can be linked to one or more MemberPress membership levels. Edit any product and open the MemberPress tab in the Product Data section.
Enable MemberPress Membership — Check this box to activate membership features for this product.
Membership Type — Choose between:
• Local Membership — Creates memberships on this site
• External Membership — Creates memberships on a remote site via REST API
Membership Level(s) — Select one or more MemberPress membership levels. A card appears for each selected level with these options:
Price — The amount recorded in the MemberPress transaction. Defaults to the WooCommerce product price but can be overridden per level. This is useful when one product grants multiple levels at different price points.
Expiration — Choose between:
• Use MemberPress defaults — Uses whatever expiration is configured in the MemberPress membership level settings (the current setting is displayed so you don’t need to leave the page)
• Override expiration — Choose Never, Fixed Date, or a Period (months + days)
Corporate Account — If MemberPress Corporate Accounts addon is active, you can enable corporate accounts per level and set the maximum number of sub-accounts.
Variable Products
Each variation can have its own membership settings independent of the parent product. Expand any variation in the product editor to see the MemberPress section.
When a customer purchases a specific variation, the plugin checks the variation for membership settings first. If no settings are found on the variation, it falls back to the parent product’s settings. This lets you:
• Assign different membership levels to different variations (e.g., “Monthly” variation → Silver, “Annual” variation → Gold)
• Use the same level but with different prices per variation
• Leave some variations without membership features entirely
Expiration Settings
By default, the plugin uses whatever expiration is configured directly in your MemberPress membership level. This means if you change the expiration in MemberPress, all future orders automatically use the new value.
To override per product, select Override expiration and choose:
• Never Expire — Membership never expires
• Fixed Date — Expires on a specific date you set
• Period — Expires after a number of months and/or days from the purchase date
The current MemberPress default is always displayed beneath the option so you can make an informed decision.
The discount system works at two levels: per-product and global.
Per-Product Discounts
Edit any WooCommerce product and open the Member Discounts tab. Select the membership levels that qualify for a discount, then configure each level’s discount type and value:
• Percentage — e.g., 20% off the regular price
• Fixed Price — member pays exactly this amount
• Fixed Amount Off — subtracts a fixed amount from the price
Additional options:
• Prioritize this discount — Forces the per-product discount to always win over global discounts
• Exclude from global discounts — This product is never affected by global rules
Global Discounts
Go to WooCommerce > MP Sub Bridge > Discounts. Set a discount type and value for each membership level. These apply to all products that don’t have per-product overrides or exclusions.
How Conflicts Are Resolved
When both a per-product and global discount apply to the same product for the same member:
1. If the product has “Prioritize” enabled, the per-product discount always wins
2. Otherwise, the lowest price (best for the customer) is chosen
3. Discounts are never stacked — only the single best discount applies
Discounted prices appear automatically on the shop page, product page, and in the cart for logged-in members with qualifying memberships.
This feature lets you sell memberships on your WooCommerce store (Site A) and create them on a completely separate WordPress/MemberPress site (Site B). Site B does not need WooCommerce — only MemberPress and this plugin.
Setting Up the Remote Site (Site B — Receiver)
1. Install this plugin on Site B
2. Go to Settings > WCMPA Remote Access
3. Set Enable Remote Access to Enabled
4. Click Generate New Key to create an API key
5. Copy the API key and the REST API URL shown on the page
Connecting from Your Store (Site A — Sender)
1. Go to WooCommerce > MP Sub Bridge > External Sites
2. Enter the remote site’s name, URL, and API key
3. Click Add Site
4. Use the Test Connection button to verify the connection
5. Use Fetch Memberships to load the remote site’s available membership levels
Linking Products to External Memberships
1. Edit a WooCommerce product, open the MemberPress tab
2. Set Membership Type to External
3. Select the external site from the dropdown
4. Select the remote membership level(s)
5. Configure pricing and expiration as normal
What Happens on Purchase
When the order completes, the plugin sends a REST API request to the remote site with the customer’s email, name, membership ID, price, and expiration. The remote site creates the WordPress user (if needed) and the MemberPress transaction. The response (username, login URL) is stored in the order notes.
Status Sync
If an order is refunded or cancelled, the plugin automatically sends a status update to the remote site, which updates the MemberPress transaction accordingly.
Security
All API communication uses key-based authentication via the X-WCMPA-API-Key header. Keys are validated with timing-safe comparison (hash_equals) to prevent timing attacks.
Activity Log
Every membership creation is logged in WooCommerce > MP Sub Bridge > Activity Log. Each entry shows the order ID, action performed, details, user email, and timestamp.
Entries from the same order are grouped by a batch ID, making it easy to see everything that happened for a single order. You can filter logs by date or order ID. A Clear Logs button removes all entries (with confirmation).
Actions logged include:
• Membership assigned
• Membership creation failed
• New member created
• Existing member found
• Welcome email sent
• External membership registration
Reapply Memberships
If something went wrong or you need to re-process an order:
Single Order: Open the order, use the Order Actions dropdown and select Re-apply MemberPress Membership. This deletes all existing transactions/subscriptions for that order and re-runs the full process.
Bulk: On the Orders list, select multiple orders, choose Re-apply MemberPress Membership from the Bulk Actions dropdown, and click Apply. Works on both HPOS and legacy order screens.
System Status
The System Status tab shows a quick health check: WooCommerce version, MemberPress version, whether WC Subscriptions and MP Corporate are detected, PHP version, and HPOS status.
wcmpa_processed = 1 after processing. If an order was already processed, it won’t run again. Use the Reapply action to re-process.https://remote-site.com/wp-json/ in your browser. If it shows a JSON response, the REST API is working. If not, check permalink settings (set to anything other than “Plain”).
4. SSL — Both sites should use HTTPS. Mixed HTTP/HTTPS may cause connection failures.
5. Firewall — Some security plugins block REST API requests. Whitelist the /wp-json/wcmpa/v1/ endpoints.wcmpa_* post meta and user meta is deleted
• The custom wcmpa_activity_log database table is dropped
• All plugin transients are cleared
Important: This only happens on deletion, not deactivation. Deactivating the plugin preserves all data so you can reactivate later without losing settings.
Note: MemberPress transactions and subscriptions created by the plugin are NOT deleted on uninstall. These belong to MemberPress and should be managed through MemberPress’s own tools.If you can’t find the answer in this documentation, reach out to our support team. We’re happy to help with setup, configuration, and troubleshooting.