MemberPress Integration: Signup, Subscription, Expiry, and Payment Triggers
Krom Automation Pro connects to MemberPress, giving you six triggers and three actions that cover the complete membership lifecycle.
From initial signup and recurring payments through subscription cancellations, membership expiry, and payment failures. This is everything you need to automate the customer journey on a membership site.
No API key or configuration is required. Krom Automation detects MemberPress automatically when it is active.
Requirements #
- Krom Automation Pro installed and activated
- MemberPress installed and active
Available triggers #
Member Signup Completed
Fires once when a brand-new member signs up and their payment is confirmed. This trigger fires only for genuinely new members — it does not fire on renewals or subsequent purchases by existing members.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
user_display_name | Member display name |
user_first_name | Member first name |
user_last_name | Member last name |
membership_id | MemberPress membership ID |
membership_name | Membership plan name |
membership_url | Membership page URL |
txn_id | Transaction ID |
amount | Amount paid |
currency | Currency code |
gateway | Payment gateway used |
signup_date | Date of signup |
Common use: Sending a branded welcome email, posting a new member notification to Slack, adding the member to a FluentCRM list, or granting LearnDash course access based on their membership plan.
Transaction Completed
Fires when any MemberPress payment completes — one-time purchases and recurring renewals alike. Use a condition on {{is_recurring}} to branch the workflow based on payment type.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
membership_id | Membership ID |
membership_name | Membership plan name |
txn_id | Transaction ID |
amount | Amount paid |
currency | Currency code |
gateway | Payment gateway |
is_recurring | Boolean — true if this is a recurring renewal payment |
Common use: Sending a payment receipt for every transaction, posting revenue notifications to Slack, or logging payments to Google Sheets. Use the is_recurring condition to send a different email for first-time payments versus renewals.
Subscription Created
Fires when a new recurring MemberPress subscription is established.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
membership_id | Membership ID |
membership_name | Membership plan name |
subscription_id | MemberPress subscription ID |
gateway | Payment gateway |
created_at | Subscription creation date |
Common use: Triggering a subscription-specific welcome flow, adding the member to a recurring-subscribers segment in your email marketing platform.
Subscription Cancelled
Fires when a MemberPress recurring subscription is cancelled.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
membership_id | Membership ID |
membership_name | Membership plan name |
subscription_id | MemberPress subscription ID |
cancel_date | Date of cancellation |
Common use: Triggering a win-back campaign, removing the member from active-subscriber email lists, notifying the team, or revoking LearnDash course access.
Membership Expired
Fires when a MemberPress transaction expires and the member loses access to protected content.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
membership_id | Membership ID |
membership_name | Membership plan name |
expiry_date | Date the membership expired |
Common use: Sending a renewal offer, downgrading the user’s WordPress role, removing them from members-only email lists, or revoking LearnDash course access.
Recurring Payment Failed
Fires when a scheduled recurring billing attempt fails.
| Data field | Description |
|---|---|
user_id | WordPress user ID |
user_email | Member email address |
membership_id | Membership ID |
membership_name | Membership plan name |
amount | The amount that failed to charge |
gateway | Payment gateway |
Common use: Triggering a multi-step dunning sequence — an immediate payment failure email, a follow-up a few days later with a payment update link, and a final notice before access is revoked.
Available actions #
Grant Membership Access
Manually grants a user access to a MemberPress membership by creating a free completed transaction. This bypasses payment and gives the user immediate access.
| Field | Required | Description |
|---|---|---|
user_id or user_email | Yes | The user to grant access to. |
membership_id | Yes | The MemberPress membership ID to grant. |
Common use: Granting complimentary membership access to team members, partners, or beta users; or granting access based on an event from another plugin (for example, granting a MemberPress membership when a LearnDash course is completed).
Cancel Subscription
Cancels a user’s recurring MemberPress subscription. Access remains available until the end of the current billing period.
| Field | Required | Description |
|---|---|---|
user_id or user_email | Yes | The member whose subscription to cancel. |
subscription_id | Yes | The MemberPress subscription ID to cancel. Use {{subscription_id}} from the trigger. |
Update Member Meta
Writes a WordPress user meta value for a MemberPress member. This stores custom data on the user record.
| Field | Required | Description |
|---|---|---|
user_id or user_email | Yes | The member to update. |
meta_key | Yes | The user meta key to set. |
meta_value | Yes | The value to store. Merge tags are supported. |
Common use: Storing a membership plan name, a join date, or a custom attribute on the user record for use in conditional logic elsewhere.
Setting up a MemberPress workflow #
- Go to Krom Automation > Workflows and click Add New Workflow.
- Click Add Trigger and select the MemberPress trigger from the Membership category.
- For Transaction Completed, add a Condition node on
is_recurringto branch between first-time and renewal payments. - Add your actions using
{{user_email}},{{membership_name}},{{amount}}, and other merge tags. - Simulate and activate.
Screenshot: MemberPress Member Signup Completed trigger connected to a Send Email welcome action and a Mailchimp Subscribe action.
Screenshot: MemberPress Recurring Payment Failed trigger connected to a series of Send Email dunning actions with delay nodes between them.
Real-world automation examples #
Branded welcome email on signup Trigger: Member Signup Completed Action: Send Email to {{user_email}} with a welcome message, the {{membership_name}} they joined, and links to getting started.
Payment receipt for every transaction Trigger: Transaction Completed Action: Send Email to {{user_email}} with a receipt showing {{amount}}, {{currency}}, {{txn_id}}, and {{gateway}}.
Multi-step dunning on payment failure Trigger: Recurring Payment Failed Action 1: Send Email (immediate) — payment failed, update payment method Action 2 (3-day delay): Send Email — follow-up reminder with direct link to billing settings Action 3 (7-day delay): Send Email — final notice before access is suspended
Win-back campaign on cancellation Trigger: Subscription Cancelled Action 1: Send Email — acknowledge cancellation, offer a return discount Action 2 (7-day delay): Send Email — check-in with a special offer Action 3: Mailchimp Remove Tag (active member) and Add Tag (churned)
Grant LearnDash access on signup Trigger: Member Signup Completed (condition: membership_name equals Pro Plan) Action: LearnDash Enroll in Course using {{user_id}} and your Pro Plan course ID
Sync new members to FluentCRM Trigger: Member Signup Completed Action: FluentCRM Create or Update Contact with {{user_email}}, {{user_first_name}}, {{user_last_name}}, tagged with {{membership_name}}
Pre-built templates #
Install these from Krom Automation > Templates:
| Template | What it does |
|---|---|
mp-welcome-new-member | Welcome flow for brand-new members |
mp-payment-receipt | Payment confirmation receipt email |
mp-payment-failed-retry | Payment failure recovery and retry instructions |
mp-subscription-cancelled-winback | Win-back campaign after subscription cancellation |
mp-membership-expired-renewal | Renewal reminder when a membership expires |
mp-upgrade-upsell | Upsell to a higher membership tier |
Troubleshooting #
Member Signup Completed is also firing on renewals. This trigger is designed to fire only on new member signups. If it’s firing on renewals, check whether the renewal is creating a brand-new user account rather than processing through an existing one. Use Transaction Completed with a condition on is_recurring equals false if you need to target only first-time payments more precisely.
The Grant Membership Access action isn’t giving the user content access. Confirm the membership ID is correct and that the user exists in WordPress (has a user account). The action creates a free transaction — if the membership has IP or other access restrictions configured in MemberPress, those may still apply.
Recurring Payment Failed is triggering but the member’s access isn’t being suspended. Krom Automation fires the trigger based on the MemberPress hook — what happens to the membership access after a payment failure is controlled by MemberPress settings, not by Krom Automation. Check your MemberPress payment failure handling settings.