Skip to content
WordPress.org
  • Showcase
  • Plugins
  • Themes
  • Hosting
  • News
    • Learn WordPress
    • Documentation
    • Education
    • Forums
    • Developers
    • Blocks
    • Patterns
    • Photos
    • Openverse ↗︎
    • WordPress.tv ↗︎
    • About WordPress
    • Make WordPress
    • Events
    • Five for the Future
    • Enterprise
    • Gutenberg ↗︎
    • Job Board ↗︎
  • Swag ↗︎
  • Get WordPress
Get WordPress
WordPress.org

Plugin Directory

LinxyPass

  • Submit a plugin
  • My favorites
  • Log in
  • Submit a plugin
  • My favorites
  • Log in

LinxyPass

By Linxy Media
Download
  • Details
  • Reviews
  • Installation
  • Development
Support

Description

LinxyPass removes passwords from your WordPress login. When a member signs in, they approve the request on a device they already own: their phone (Face ID or fingerprint) or a tap on their watch. Nothing to remember, nothing to phish, and no password for this sign-in method.

How a sign-in works

  1. The member opens your login page. It shows your site’s own login image, a Linxy Mark.
  2. They scan the image with the free Linxy App, or tap to sign in from their phone’s home screen or their Apple Watch or Wear OS watch.
  3. They confirm with Face ID, fingerprint, or a tap on the watch.
  4. The Linxy platform confirms the approval to your site’s server, and your site signs the member in.

What the plugin gives you

  • Set-up from the plugin’s own screen: pick a login image and scan once with the Linxy App
  • LinxyPass on wp-login.php in the layout you choose: full screen, combined, image tile, or button
  • Three sign-in methods to choose from: LinxyPass or password; LinxyPass only for members who have set it up; or no passwords for anyone
  • WordPress multisite: a Network Admin screen for every site, and sites that are not set up yet can sign members in through the main site’s LinxyPass
  • [linxypass] shortcode for custom login pages and [linxypass_enable] so members can turn on LinxyPass from an account page
  • WooCommerce My Account integration
  • Every sign-in is confirmed server to server; nothing is trusted from the browser
  • Invitations, access requests, and a member list with revoke and block
  • Optional automatic accounts for new members

What you need

  • A paid Linxy plan for your site. LinxyPass is included in every paid plan, from $49 a month for one site, with no separate LinxyPass fee. Launch offer: the first 100 site owners who go live with LinxyPass get six months free. See https://linxypass.com/pricing/ for current plans.
  • The plugin creates your site’s LinxyPass record for you during set-up. Plugin home page and set-up guide: https://linxypass.com/wordpress/
  • Members need the free Linxy App for iPhone or Android. Apple Watch and Wear OS approvals are supported.

Terms and privacy

Use of this plugin requires a Linxy account and is subject to the Linxy Terms of Service (https://lnxy.me/terms) and Privacy Policy (https://lnxy.me/privacy).

Credits

The admin screens use the Poppins typeface (Copyright 2020 The Poppins Project Authors), bundled with the plugin under the SIL Open Font License 1.1; see assets/fonts/OFL.txt.

The setup screen’s QR code is drawn in the browser by qrcode-generator 1.4.4 (Copyright (c) 2009 Kazuhiko Arase, MIT license), bundled unmodified as assets/js/qrcode.js. No QR service is contacted.

External services

This plugin relies on one external service: the Linxy platform, operated by Linxy Media LLC at https://lnxy.me. LinxyPass is a sign-in service, so the plugin cannot work without it. The plugin uses no other external service. Fonts and the setup QR code generator are bundled with the plugin.

  • Service: Linxy platform (LinxyPass), https://lnxy.me
  • Terms of Service: https://lnxy.me/terms
  • Privacy Policy: https://lnxy.me/privacy

All requests use HTTPS. WordPress passwords are never sent. Below is every connection the plugin makes, when it happens, and what is sent.

Before the site is connected

  • Show Linxy starter images (only when the administrator clicks that button on the setup screen): GET https://lnxy.me/api/fusion/login/templates. Nothing about the site or its users is sent. The browser then loads the image thumbnails from lnxy.me. Opening the setup screen alone contacts nothing.
  • Activate / Set up (when the administrator clicks it): POST https://lnxy.me/api/fusion/login/provision. Sends the site URL, site name, WordPress version, the administrator’s display name and email address, the chosen login image, the login layout and the verification level. Returns a partner ID and an API key, which are stored in WordPress options and never sent to the browser.
  • Use an existing API key (when the administrator pastes one): GET https://lnxy.me/api/fusion/login/partner/info with the API key, to confirm it belongs to this site.

On the login page and other pages that show the LinxyPass button

  • The browser loads the LinxyPass sign-in script from https://lnxy.me/static/linxypass.js. It creates a sign-in session by sending the site’s partner ID (and, for a browser that has signed in before, a remembered-browser token so the request can go to the member’s phone). It shows the site’s sign-in image and checks the session status until the member approves on their phone.
  • When the member has approved: GET https://lnxy.me/api/fusion/login/status. Sends the session ID with the API key. Receives a site-specific member identifier. The plugin then signs that member in through WordPress.
  • After a sign-in or enrollment: POST https://lnxy.me/api/fusion/login/enrich and https://lnxy.me/api/partner/requests/lookup-by-fusion. Sends the member’s site-specific identifier, WordPress display name and email address, so the site owner can recognise the member in their member list.
  • One-tap sign-in from the Linxy App: POST https://lnxy.me/api/fusion/login/appconsume. Sends the single-use token from the link the member opened.
  • Members who enroll from inside their account: POST https://lnxy.me/api/partner/enrollment/vouch. Sends the session ID and the member’s WordPress user ID and email address.

In wp-admin, after the site is connected (administrators only)

  • LinxyPass screens check the site’s status: GET https://lnxy.me/api/partner/owner-status (API key and the site’s host name) and https://lnxy.me/api/fusion/login/partner/info (API key). They also read the webhook secret and the member count.
  • Members and Access Requests tabs: https://lnxy.me/api/partner/members, /api/partner/requests, /api/partner/requests/approve, /api/partner/requests/deny and /api/partner/members/revoke. These send the API key and, for an action, the member’s email address and site-specific identifier.
  • Invitations tab: POST https://lnxy.me/api/partner/requests/invite. Sends the invited person’s name and email address so a personal enrollment link can be made. The invitation email itself is sent by WordPress, not by Linxy.
  • Owner details: POST https://lnxy.me/api/fusion/login/partner/owner/update. Sends the site owner’s display name and email address when they change in WordPress.
  • Plan and login image: POST https://lnxy.me/api/fusion/login/partner/tier (the chosen verification level) and https://lnxy.me/partner/mark/strengthen (partner ID and API key, when the owner asks for a stronger login image).
  • “Test connection”, “Open dashboard” and “Brand your login image” buttons: https://lnxy.me/api/fusion/login/create, /api/partner/dashboard-link and /api/partner/brand-session. Each sends the API key and returns a short-lived link or a test result.

By connecting the plugin you create a Linxy partner account for your site and agree to the Terms of Service on behalf of your site.

Installation

  1. Install and activate the plugin.
  2. Go to LinxyPass in the WordPress admin menu.
  3. Choose a login image (or upload your own) and click Set up. Your site is connected to LinxyPass automatically.
  4. Link your own phone: open the Linxy App and scan the image shown on the settings screen.
  5. Sign out and sign back in with LinxyPass.

To let other members sign in, invite them from the Invitations tab, or let them request access from the login page and approve them under Access Requests.

On multisite, network-activate the plugin and open Network Admin > LinxyPass to see every site’s status and set each one up.

FAQ

What does LinxyPass cost?

The plugin is free. The Linxy service it connects to needs a paid Linxy plan for your site, from $49 a month for one site, with LinxyPass included and no separate fee. The first 100 site owners who go live with LinxyPass get six months free. Members never pay; they sign in free with the Linxy App. Current plans: https://linxypass.com/pricing/

Do my members need an account with Linxy?

They need the free Linxy App on their phone. They are linked to your site the first time they scan your login image and you approve them, or when they accept an invitation.

Can members still use a password?

That is your choice under LinxyPass > Setup > Sign-in methods:

  • LinxyPass or password (default): LinxyPass is added and passwords keep working.
  • LinxyPass only, for members who have set it up: members linked to LinxyPass can no longer use their password, so a leaked password is useless. Members who have not set it up keep theirs.
  • No passwords for anyone: the login page shows only LinxyPass, password sign-in and password resets are refused, and people without the Linxy App are shown where to get it. Choose this only if every member can use the Linxy App.

Passwords stay available on any site where LinxyPass is not set up, so nobody is locked out. If you ever cannot sign in, rename the folder wp-content/plugins/linxypass with your host’s file manager or FTP; that turns LinxyPass off.

What happens if a member loses their phone?

The site owner can revoke that member’s LinxyPass access from the Members tab. The member can then set up LinxyPass again on a new phone.

Does it work on WordPress multisite?

Yes. Network-activate it. Network Admin > LinxyPass lists every site with its status. Each site can have its own login image; a site that is not set up yet can sign members in through the main site’s LinxyPass, including sites on their own domain.

Where do I get support?

Use this plugin’s support forum on WordPress.org for questions about the plugin. For anything about your Linxy account or your members, use https://lnxy.me/contact or the Help Center at https://lnxy.me/help. Please do not post account details, partner IDs or member email addresses in a public forum.

Where is member data stored?

WordPress stores the link between a member’s user account and their LinxyPass identifier for your site in user meta. The Linxy platform stores the enrollment record for your site. See “External services” above.

Does this plugin show a QR code?

Not for signing in. Members scan your site’s login image (a Linxy Mark) with the Linxy App, or tap to sign in from their phone or watch. The only QR code in the plugin is an optional set-up link shown to the site owner during first-time set-up.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“LinxyPass” is open source software. The following people have contributed to this plugin.

Contributors
  • Linxy Media

Translate “LinxyPass” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

2.20.4

  • Security: an invitation now only works with the Linxy account that uses the invited email address. Every invitation email says so.
  • Send and Resend issue a new link and cancel the earlier one, so a link that reached the wrong inbox stops working.
  • New default invitation wording. Invitations you have already customized keep your text.

2.20.3

  • Every LinxyPass sign-in now goes through one function that first runs WordPress’s own authenticate filter, so security plugins can refuse a sign-in, and fires wp_login_failed / wp_login.
  • Output buffers are opened and closed within the same function.
  • The External services section lists every connection the plugin makes.

2.20.2

  • Security: accounts created through LinxyPass sign-in are always Subscribers. The “New User Role” setting is removed.
  • All scripts and styles are now loaded through WordPress’s script and style functions.
  • The setup QR code is drawn by a bundled library instead of an outside QR service.
  • Starter login images are loaded from lnxy.me only when the administrator asks for them.
  • Invitation emails no longer include “Powered by LinxyPass” unless the site owner turns it on.
  • The one-tap sign-in confirmation form carries a WordPress nonce. Escaping fix in the [linxypass_enable] shortcode. Temporary data keys use the linxypass_ prefix.

2.20.1

  • Fix: the button in a “Send Test to Me” invitation opened a 404 page. It now opens the enrollment preview. Real invitations were not affected.

2.20.0

  • First release in the WordPress.org plugin directory. Updates now come from WordPress.org.
  • Includes everything in 2.19.4.

2.19.4

  • The admin menu now shows the full-color LinxyPass tile (site and Network Admin).

2.19.3

  • LinxyPass branding in wp-admin: the LinxyPass mark in the admin menu (site and Network Admin) and a LinxyPass header with status, version, Help Center link and tabs on the LinxyPass screens. Poppins is bundled with the plugin (SIL Open Font License); nothing is loaded from outside sites.

2.19.2

  • The LinxyPass icon now shows on Dashboard > Updates and the Plugins screen, and the plugin details window shows the LinxyPass banner.
  • Security hardening from the WordPress Plugin Check review: output escaping, input sanitizing, prepared database queries, and redirects limited to this site and lnxy.me.
  • Login-page diagnostic comments are printed only when WP_DEBUG is on.
  • Requires WordPress 6.2 or later.

2.19.1

  • Multisite fix: each site now keeps its own LinxyPass link for a member. Before, setting up or signing in on one site of a network overwrote the link the main site relied on, and the main site answered “not linked”. The main site keeps its existing links.
  • Resetting LinxyPass on one site of a network no longer removes links on the other sites.
  • With “No passwords for anyone”, the login page is clean: no WordPress logo, no card or box, only LinxyPass. “New to LinxyPass? Get the Linxy App” is a small line at the bottom of the screen.

2.19.0

  • Multisite: new Network Admin > LinxyPass screen listing every site with its LinxyPass status, Set up / Manage links and network settings.
  • Multisite: network sign-in. A site without its own LinxyPass setup signs members in through the main site’s LinxyPass and a one-time pass (60 seconds, single use, bound to the member and the site). Works across mapped domains. Only network admins and the site’s own linked members get through.
  • New sign-in method “No passwords for anyone”: no username/password form on the login page, password sign-in and password resets refused, and a “Get the Linxy App” link for newcomers. Every LinxyPass display (full screen, combined, tile, button) still works. On multisite, “LinxyPass only, network-wide” turns it on for every site.
  • Passwords stay available on any site where LinxyPass is not set up at all, so nobody is locked out.

2.18.4

  • With the password form hidden, the “You are now logged out” notice no longer covers the login page.

2.18.3

  • New: with “LinxyPass only” selected, you can hide the username and password form on the login page. The page then shows only LinxyPass, with a small “Sign in with a password” link for members who have not set it up yet.
  • Fix: setup now requires a login image. The first starter image is selected for you, so the login page always has a Mark to scan.

2.18.2

  • Fix: a member who is signed in to this site can set up LinxyPass right away. The Linxy App no longer asks them to request access, even when the site reviews new enrollments.

2.18.1

  • Fix: members (non-admins) can turn on LinxyPass from their profile. The “Enable LinxyPass” link now opens a working set-up button.
  • Fix: after setting up LinxyPass, the page refreshes to show it is enabled.

2.18.0

  • New: Sign-in methods setting. Site owners choose LinxyPass or password (default), or LinxyPass only for members who have set it up.

2.17.1

  • Maintenance: first release delivered through signed updates.

2.17.0

  • New: LinxyPass updates now appear on the Plugins screen. Each release is signed by Linxy Media and verified before it is installed.
  • New: optional automatic updates, off until the site owner turns them on.

2.16.2

  • Security: sign-ins are confirmed with Linxy using the site’s partner API key, and the member identity is taken only from Linxy’s answer.
  • Security: each sign-in session is accepted once.

2.16.1

  • Choose how LinxyPass appears on the login page (including Full screen) during setup.
  • The setup Mark is shown larger and at its real size, so it scans from a normal distance.
  • Device wording now says Android or iPhone.

2.16.0

  • Setup is offered automatically when LinxyPass isn’t set up for this site’s address (for example after moving or copying a site); the login page stays on passwords until then.
  • New “Start over” option clears this site’s LinxyPass settings so it can be set up again.
  • The login page no longer includes any part of the site key in its diagnostic comments.

2.15.0

  • First WordPress.org release. Plugin slug is now linxypass (main file linxypass.php). Settings and member links carry over from earlier LinxyPass Login installs; deactivate and delete the old linxypass-login folder after activating this one.
  • Owner self-heal now re-runs safely when the platform confirms the signed-in identity is the site owner.
  • Removed an unused AJAX registration.

2.14.1

  • Owner self-heal made re-runnable (guarded).

2.14.0

  • One-tap sign-in on browsers that already know you (remembered browser).

Meta

  • Version 2.20.4
  • Last updated 18 hours ago
  • Active installations Fewer than 10
  • WordPress version 6.2 or higher
  • Tested up to 7.1.4
  • PHP version 7.4 or higher
  • Tags
    authenticationbiometricloginpasswordlesssecurity
  • Advanced View

Ratings

No reviews have been submitted yet.

Your review

See all reviews

Contributors

  • Linxy Media

Support

Got something to say? Need help?

View support forum

  • About
  • News
  • Hosting
  • Privacy
  • Showcase
  • Themes
  • Plugins
  • Patterns
  • Learn
  • Documentation
  • Developers
  • WordPress.tv ↗
  • Get Involved
  • Events
  • Donate ↗
  • Swag ↗
  • WordPress.com ↗
  • Matt ↗
  • bbPress ↗
  • BuddyPress ↗
WordPress.org

The WordPress® trademark is the intellectual property of the WordPress Foundation.

  • Visit our X (formerly Twitter) account
  • Visit our Bluesky account
  • Visit our Mastodon account
  • Visit our Threads account
  • Visit our Facebook page
  • Visit our Instagram account
  • Visit our LinkedIn account
  • Visit our TikTok account
  • Visit our YouTube channel
  • Visit our Tumblr account
Code is Poetry