Skip to main content

Hooks

Actions and filters MemberSync provides for developers who want to customize its behavior. Hook names use the prefixes membersync_, msync_, and the namespaced tangible/membersync/….

note

This is a starting reference compiled from the plugin source. Argument signatures and return shapes should be confirmed against the code for the version you're targeting.

Actions

ActionFires when
membersync_user_createdMemberSync creates a WordPress user (e.g. via org invite or CSV import)
membersync_register_form_start / membersync_register_before_register_button / membersync_register_form_endRendering the login/register form (org invites)
wc_memberships_membersync_course_enrollment_access_schedule_fieldRendering the course-enrollment rule's access-schedule field
wc_memberships_membersync_group_enrollment_access_schedule_fieldRendering the group-enrollment rule's access-schedule field

Filters

Seats (tangible/membersync/seats/…): query, query/where, create/args, set_owner, assign_user, set_managers, set_start_date, set_end_date, set_access, current_user_can.

Organization dashboard (msync_dashboard_…): a large set of label and visibility filters for the front-end organization dashboard (panel and nav-button labels/visibility, role labels, "owner can rename organization", report stat labels, etc.).

Login / register: membersync_login_credentials, membersync_use_custom_redirect_after_registration, membersync_edit_redirect_after_login_register.

User provisioning: membersync_edit_new_user_username, membersync_new_user_username.

CSV import: msync_before_process_csv_extended_meta, msync_after_process_csv_extended_meta, msync_suppress_upload_csv, msync_suppress_csv_process_row, msync_upload_csv_extended_headers.

Licensing: membersync_licenses_check_course_access, rest/membersync/licensing/v1/current_user_can.

Teams: msync_teams_area_navigation_go_to_label.

Scheduled (background) actions

MemberSync runs work asynchronously via Action Scheduler. Key job hooks:

HookPurpose
tangible_event_enroll_userTime-based (delayed/scheduled) course enrollment
membersync_sync_membership_plan_changesRe-sync all members after a plan's courses change
membersync_sync_product_changesSync after a product changes
membersync_run_migration_upRun the data migration from the old system