Back to Nodes

MemberPass

Last updated May 6, 2026

n8n community node for MemberPass — monetise Telegram communities via subscriptions, access codes, and webhook events.

26 Weekly Downloads
210 Monthly Downloads

Included Nodes

MemberPass
MemberPass Trigger

Description

n8n-nodes-memberpass

Community node for n8n that drives MemberPass — subscription + access-code monetisation for Telegram communities.

Provides two nodes:

  • MemberPass Trigger — starts a workflow when a MemberPass event fires. Covers subscriptions, payments, members, access codes, plans, projects, project resources, bot connectivity, billing, groups, roles, teams, and team members (71 events total). Uses the /v1/webhook-subscriptions lifecycle and validates the MP-Signature HMAC on every request.
  • MemberPass — action node for every documented route on api.memberpass.net. Covers 19 resources across creator-facing surfaces (projects, plans, subscriptions, subscribers, members, access codes, resources, payment methods), admin surfaces (teams, team members, roles, groups, tokens, webhook endpoints, webhook deliveries, activity log), and read-only data surfaces (analytics, bot status, distribution links).
  • Installation

    Community install (recommended)

    Inside n8n:

    1. Settings → Community Nodes → Install
    2. Enter n8n-nodes-memberpass
    3. Agree to the community-node warning and restart n8n

    Manual install (self-hosted)

    cd ~/.n8n/custom
    npm install n8n-nodes-memberpass
    

    Restart the n8n process after install.

    Setup

    1. Mint an API token at https://app.memberpass.net/settings/tokens. Every token is auto-bound to a team (scope:team:); you pick the abilities it carries. See the ability catalogue for the full list. Minimums per use-case:
    Trigger nodewebhook-endpoint:manage. Restrict to a single project by also scoping the token to that project (scope:project:).
    Read-only workflows — combine :view / :view-any abilities for the resources you list or fetch (e.g. project:view-any, project-subscription:view, project-subscription-plan:view, project-access-code:view-any, team-member:view-any, role:view, group:view, activity:read, dashboard:read, distribution:read, billing:read).
    Write workflows — add the matching :create / :update / *:delete abilities (e.g. project:create, project-subscription-plan:update, project-access-code:create, project-resource:delete). Cancelling a subscription is project-subscription:update; banning/kicking a member is project-user:update.
    2. In n8n, Credentials → New → MemberPass API and paste the mpt_... token. Leave the base URL at the default unless you are self-hosting.
    3. Add a MemberPass Trigger node, pick one or more events, optionally scope to a single project, and activate the workflow. On activation n8n registers the endpoint with MemberPass. Deactivating the workflow deletes the endpoint.

    Supported events (71)

    The full catalogue is defined in nodes/MemberPassTrigger/events.ts and mirrors the event reference.

    | Family | Count | Events |
    | —————- | —– | —————————————————————————————————————————————————————————————————————————————————————————————————— |
    | Subscription | 16 | subscription.created, subscription.activated, subscription.renewed, subscription.cancelled, subscription.expired, subscription.downgraded, subscription.upgraded, subscription.pastdue, subscription.unpaid, subscription.paused, subscription.unpaused, subscription.reactivated, subscription.refunded, subscription.trialstarted, subscription.trialconverting, subscription.trialexpired |
    | Payment | 4 | payment.succeeded, payment.failed, payment.pending, payment.refunded |
    | Member | 10 | member.joined, member.trialjoined, member.banned, member.unbanned, member.kicked, member.removed, member.churned, member.converted, member.resourceadded, member.resource_removed |
    | Access Code | 3 | accesscode.generated, accesscode.redeemed, access_code.expired |
    | Plan | 6 | plan.created, plan.updated, plan.activated, plan.deactivated, plan.deleted, plan.sync_completed |
    | Project | 7 | project.created, project.updated, project.archived, project.restored, project.deleted, project.bot.connected, project.bot.disconnected |
    | Project Resource | 4 | project.resource.created, project.resource.linked, project.resource.unlinked, project.resource.deleted |
    | Billing | 9 | billing.invoicecreated, billing.invoicepaid, billing.invoiceoverdue, billing.paymentfailed, billing.graceperiodwarning, billing.accountlocked, billing.tierupgraded, billing.tierdowngraded, billing.tiercancelled |
    | Group | 3 | group.created, group.updated, group.deleted |
    | Role | 3 | role.created, role.updated, role.deleted |
    | Team | 2 | team.created, team.deleted |
    | Team Member | 4 | team.member.invited, team.member.joined, team.member.removed, team.member.role_changed |

    Supported actions

    | Resource | Operations |
    | —————- | ——————————————————————————————————————- |
    | Project | Create, Update, Archive, Restore, Delete, List, Get, Find by Handle |
    | Plan | Create, Update, Publish, Unpublish, Get, List, Delete, Find by Name |
    | Subscription | Cancel, Get, List |
    | Subscriber | Find by Telegram ID |
    | Member | Ban, Unban, Kick, Get, List |
    | Access Code | Bulk Generate, List, Delete, Preview |
    | Resource | Create, List, Get, Unlink, Delete |
    | Payment Method | List, Get |
    | Distribution | Get Bot Link, Get Portal URL, Get Deep Link |
    | Bot | Get Status |
    | Analytics | Get Dashboard, Get Earnings, Get Subscribers, Get Transaction Breakdown, Get Plan Performance, List Transactions |
    | Activity | List |
    | Team | List, Get, Get Current |
    | Team Member | List, Get |
    | Role | List, Get |
    | Group | List, Get |
    | Token | List, Get, Revoke |
    | Webhook Endpoint | List, Create, Delete, Rotate Secret, Test |
    | Webhook Delivery | List |

    Every mutation automatically sends a fresh Idempotency-Key header so node re-runs never double-fire.

    Development

    npm install
    npm run build    # compile TS + copy icons
    npm run dev      # watch mode
    npm run lint
    

    To test against a local n8n:

    npm link
    cd ~/.n8n/custom
    npm link n8n-nodes-memberpass
    n8n start
    

    Links

  • MemberPass documentation
  • n8n integration guide
  • API reference
  • Event reference

License

MIT