Skip to main content

MemberPress Integration

Create (or reuse) a WordPress user and record a completed MemberPress transaction that grants a membership when a form is submitted.

Action type: memberpress Label: Create MemberPress Membership Dependency: MemberPress (available only when the MeprTransaction class exists) Handler: Core_Forms\Integrations\IntegrationHandlers::memberpress Source: src/integrations/class-integration-manager.php, src/integrations/class-integration-handlers.php

Setup

  1. Make sure MemberPress is installed and active. The action does not appear in the Actions list otherwise.
  2. Create the membership in MemberPress if it does not exist yet.
  3. In WordPress, edit your form > Actions tab > Add Action > Create MemberPress Membership.
  4. Select the membership and adjust the contact field mappings if needed.

Settings Reference

Setting Required Default Description
Email Yes [email] Member email; must resolve to a valid address
First name No [first_name] Member first name
Last name No [last_name] Member last name
Phone No [phone] Member phone
Membership Yes -- The MemberPress membership (memberpressproduct post) to grant
Transaction amount No 0 Amount recorded on the transaction; leave 0 for free access

All text settings support Core Forms data variables such as [email] or any form field name.

User Handling

  • If a WordPress user with the submitted email already exists, the membership is granted to that account.
  • Otherwise a new subscriber user is created. The login is derived from the email's local part (with a numeric suffix on collisions) and the password is a random 24-character string. Core Forms does not email credentials; new members can set a password through the standard WordPress reset flow.

How It Works

  1. The user is looked up or created as described above; if that fails the action reports "Could not create the MemberPress user."
  2. A MeprTransaction is stored with: - the user and selected membership, - amount and total from the Transaction amount setting, - status complete, gateway manual, - transaction number cf-{submission ID} for easy correlation.
  3. Because the transaction is complete, MemberPress treats the user as an active member of the selected membership.

Each run is idempotent: Core Forms builds a key from the submission ID, action type, and resolved settings, so re-processing the same submission never creates a duplicate transaction.

Notes

  • This action grants access directly — it does not send the user through MemberPress checkout. Use it for free signups, lead magnets, or access granted after a Core Forms payment.
  • The transaction appears under MemberPress > Transactions with the cf- transaction number.

Troubleshooting

  • Action missing from the Actions list: MemberPress must be active; the availability check looks for the MeprTransaction class.
  • "Could not create the MemberPress user": The email resolved to an empty or invalid address. Verify the Email setting maps to a real form field.
  • Member has no access: Confirm the correct membership was selected and check the transaction status under MemberPress > Transactions.