Skip to content
  • There are no suggestions because the search field is empty.

MemberPress

Learn how to seamlessly integrate Anedot with MemberPress to connect Action Pages, sync donation and lead data.

MemberPress is a powerful WordPress plugin designed to help you monetize your website by creating a membership site, controlling access to your content, and selling online courses or digital products.


Table of Contents


Connecting Anedot to MemberPress

  1. In your Anedot account, navigate to Settings > Integrations > Directory.
  2. Click the blue + New Connection button in the top-right corner.
  3. From the integration directory, choose MemberPress.
  4. Configure Action Pages.
    • Default: All Action Pages are connected by default.
    • Optional: To connect specific pages only, input a comma-separated list of the Action Page IDs you want to include.
  5. Optionally, limit the integration to send only Team-specific data to MemberPress.
  6. Enter WordPress Credentials.
    • Domain: Your WordPress site domain
    • Username: The WordPress username for the integration
    • Application Password: The application-specific password generated for the above user
      • To generate an Application Password:
        Log in to your WordPress dashboard and go to:
        https://[yourdomain]/wp-admin/users.php
        Ensure the password matches the username entered above.
  7. Click Save to complete the setup.

You can update the connected Action Pages, Team restrictions, or credentials at any time after the integration is established.


Data Relays

Anedot supports data relays from Donation Pages and Lead Pages to MemberPress:

  • Member Lookup

    • Each submission attempts to locate a member in MemberPress by email.

    • If a match is found, no further action is taken.

    • If no match is found, a new contact is created in MemberPress.

  • Donation Submissions

    • Include a Transaction Relay to MemberPress.

    • To enable this:

      • Add a Custom Hidden Field named membership_id to the Action Page.

      • The value must match the corresponding membership ID in WordPress.

      • You can set the membership_id using:

        • URL Parameters

        • Page-Specific Values

        • Global Values

Note: Anedot does not relay other custom fields to MemberPress.

  • Push Unsent Donations and Retry Relays
    • You can manually push unsent or failed donations, and filter relays by date range. This feature works for all Action Pages, regardless of page type.

Field Mapping

The Anedot Fields match the Submission's Raw Data and the MemberPress Fields match the Request Body relay.

Member Relay

Anedot Field MemberPress Field
address {postal_code} zip
address {city} city
email email
address {region} state
address {country} country
address {line1} address1
address {line2} address2
email username
lastName last_name
firstName first_name

Transaction Relay

Anedot Field MemberPress Field
total_amount total
total_amount amount
id (from Member Response Relay) member
“complete” status
“manual” gateway
(Submission) id trans_num
created_at created_at
membership_id* membership

* A custom hidden field that must be added to the Anedot AP in order to relay transaction fields.


Payload Data

Request Headers

{
  "User-Agent": "Anedot/c8daf62c",
  "Content-Type": "application/json",
  "Authorization": "Basic a2V2aW5hbmVkb3Rjb206b2pwRnJIZVF3aXhRZ2YyODBCMHlWekpt",
  "X-Uniq-Identifier": "71c82bb8-123a-4cd9-b89d-d971b805db7f"
}

Request Body (Create Member)

{
  "zip": "70112",
  "city": "New Orleans",
  "email": "admin@anedot.com",
  "state": "LA",
  "country": "US",
  "address1": "1340 Poydras Street",
  "address2": "Suite 1770",
  "username": "admin@anedot.com",
  "last_name": "Dot",
  "first_name": "Annie"
}

Request Body (Transaction)

{
  "total": "50.00",
  "amount": "50.00",
  "member": "123456789",
  "status": "complete",
  "gateway": "manual",
  "trans_num": "87234d0a-b123-4dca-8ee1-6b36d4ab4800",
  "created_at": "2023-08-24 15:01:04",
  "membership": "18"
}

Response Body (Create Member - Success)

{
  "id": 238627470,
  "url": "",
  "email": "admin@anedot.com",
  "address": {
    "mepr_address_one": "1340 Poydras Street",
    "mepr_address_two": "Suite 1770",
    "mepr_address_zip": "70112",
    "mepr_address_city": "New Orleans",
    "mepr_address_state": "LA",
    "mepr_address_country": "US"
  },
  "message": "",
  "profile": {},
  "nicename": "adminanedot-com",
  "username": "admin@anedot.com",
  "last_name": "Dot",
  "sub_count": null,
  "first_name": "Annie",
  "login_count": "0",
  "display_name": "Annie Dot",
  "registered_at": "2023-08-24 15:01:06",
  "trial_txn_count": "0",
  "active_txn_count": "0",
  "expired_txn_count": "0",
  "active_memberships": [],
  "recent_transactions": [],
  "recent_subscriptions": []
}

Response Body (Transaction - Success)

{
  "id": "15",
  "total": "50.00",
  "amount": "50.00",
  "coupon": "0",
  "member": {
    "id": 123456789,
    "url": "",
    "email": "admin@anedot.com",
    "address": {
      "mepr_address_one": "1340 Poydras Street",
      "mepr_address_two": "Suite 1770",
      "mepr_address_zip": "70112",
      "mepr_address_city": "New Orleans",
      "mepr_address_state": "LA",
      "mepr_address_country": "US"
    },
    "message": "",
    "profile": {},
    "nicename": "adminanedot-com",
    "username": "admin@anedot.com",
    "last_name": "Dot",
    "first_name": "Annie",
    "display_name": "Annie Dot",
    "registered_at": "2023-08-24 15:01:06"
  },
  "rebill": false,
  "status": "complete",
  "gateway": "manual",
  "order_id": "0",
  "prorated": "0",
  "response": null,
  "tax_desc": "",
  "tax_rate": "0.000",
  "txn_type": "payment",
  "tax_class": "standard",
  "trans_num": "87234d0a-b123-4dca-8ee1-6b36d4ab4800",
  "created_at": "2023-08-24 15:01:04",
  "expires_at": "0000-00-00 00:00:00",
  "membership": {
    "id": 18,
    "date": "2023-08-11 14:14:57",
    "group": "0",
    "price": "0.00",
    "title": "Test",
    "trial": false,
    "author": "238627436",
    "period": "1",
    "status": "publish",
    "content": "Testing the membership",
    "excerpt": "",
    "date_gmt": "2023-08-11 19:14:57",
    "modified": "2023-08-11 14:14:57",
    "plan_code": "",
    "tax_class": "standard",
    "access_url": "",
    "tax_exempt": false,
    "trial_days": "1",
    "trial_once": "1",
    "expire_type": "none",
    "expire_unit": "days",
    "group_order": "0",
    "period_type": "lifetime",
    "custom_price": "",
    "expire_after": "1",
    "expire_fixed": "2023-08-11",
    "limit_cycles": false,
    "modified_gmt": "2023-08-11 19:14:57",
    "trial_amount": "0",
    "allow_renewal": false,
    "pricing_title": "Test",
    "is_highlighted": false,
    "register_price": "",
    "custom_template": "single-product",
    "pricing_display": "auto",
    "limit_cycles_num": "2",
    "pricing_benefits": [""],
    "custom_login_urls": [],
    "thank_you_message": "",
    "thank_you_page_id": "0",
    "pricing_button_txt": "Sign Up",
    "pricing_footer_txt": "",
    "pricing_show_price": true,
    "signup_button_text": "Sign Up",
    "limit_cycles_action": "expire",
    "pricing_heading_txt": "",
    "thank_you_page_type": "message",
    "use_custom_template": false,
    "custom_profile_fields": [],
    "register_price_action": "default",
    "custom_payment_methods": [],
    "disable_address_fields": false,
    "thank_you_page_enabled": false,
    "cannot_purchase_message": "You don't have access to purchase this item.",
    "pricing_button_position": "footer",
    "customize_profile_fields": false,
    "custom_login_urls_default": "",
    "custom_login_urls_enabled": false,
    "customize_payment_methods": false,
    "limit_cycles_expires_type": "days",
    "limit_cycles_expires_after": "1",
    "simultaneous_subscriptions": false
  },
  "tax_amount": "0.00",
  "subscription": "0",
  "tax_compound": "0",
  "tax_shipping": "1",
  "tax_reversal_amount": "0.00",
  "corporate_account_id": "0",
  "parent_transaction_id": "0",
  "subscription_payment_index": false
}

Response Body (Error)

{
  "code": "mp_db_create_error",
  "data": null,
  "message": "The user was unable to be saved: Sorry, that email address is already used!"
}

Response Status (Success)

200

Response Status (Error)

500