WordPress plugin intelligence profile

QRAuth – Passwordless & Social Login

Passwordless sign-in for WordPress. Visitors sign in with QRAuth: a quick scan on a computer, one tap on a phone. No passwords to remember.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.1
Current version0.2.3
WordPress coverageTested up to WordPress 7.1
Minimum stackWP 6.4 · PHP 8.2
Directory statusactive
Last directory update26 Oct 20267d ago
Active installations30Adoption metric — not a quality score
WordPress.org rating5.0 / 5 from 2 ratings
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records QRAuth – Passwordless & Social Login version 0.2.3 as active, updated 7d ago and tested up to WordPress 7.1.

Overview

About this plugin

Adds a Sign in with QRAuth button to your WordPress login page. Visitors press it, confirm it is them on QRAuth, and come straight back signed in. On a computer they scan a code with their phone’s camera.

On a phone they confirm on the phone itself, with no code to scan. QRAuth handles Google, GitHub, Microsoft and Apple sign-in for you, so you never register an OAuth app with any of them.

Five-minute setup. Create a free QRAuth account, add your website in the QRAuth dashboard, and paste the Client ID and Client Secret into Settings → QRAuth. The settings page walks you through each step and shows the exact address to copy.

Built on OpenID Connect. Sign in with QRAuth uses the authorization code flow with PKCE, a one-time state bound to the visitor’s browser, and a nonce. WordPress checks the ID token’s signature against QRAuth’s published keys before anyone is signed in.

The QRAuth sign-in service is OpenID Certified.

Account safety is the default.

  • Only people who already have a WordPress account can sign in, matched on an email address QRAuth has verified. Turn on account creation if you want open registration.
  • New accounts are always created as Subscriber, at every layer (settings, sanitiser, runtime). Change a role by hand under Users → All Users if needed.
  • Administrators and Editors are never matched by email. They link their account once from their own profile page while signed in with their password.
  • The plugin never redirects outside your site and never touches your user table on uninstall.

php, the registration form, WooCommerce My Account and checkout, and any page via the [qrauth_login] shortcode.

Older sites: embedded widget. Sites set up before Sign in with QRAuth existed can keep using the embedded QR widget. It is used only while no Sign in with QRAuth client is configured, and switching over keeps every linked account.

Open source build. com/qrauth-io/qrauth/tree/main/packages/web-components. The unminified source files are also vendored alongside the minified bundle inside this plugin ( assets/js/source/ ) for offline review.

See the Source section below for build instructions.

External services

io) — the identity verification service that performs the actual passwordless / social sign-in. QRAuth is operated by ProgressNet, the publisher of this plugin. Without QRAuth there is no widget and no sign-in.

What the service is and what it is used for

QRAuth verifies that the user who scanned the QR code (or completed a social-provider flow on the hosted approval page) is the same person who initiated the sign-in on your WordPress site, then returns a signed assertion that the plugin uses to set the WordPress auth cookie.

What data is sent and when

  • Auth-session creation — when a visitor opens a page that hosts the widget (wp-login.php, the registration form, a shortcode-enabled page, or a WooCommerce sign-in form), the plugin’s same-origin REST proxy sends your Client ID, Client Secret (server-side only — never exposed to the browser), and the host page URL to https://qrauth.io/api/v1/auth-sessions. No visitor data is included in this request.
  • Sign-in verification — when the visitor approves the sign-in (by scanning the QR code with their phone or completing a social-provider flow on QRAuth’s hosted approval page), the plugin’s REST proxy fetches the verified result from https://qrauth.io/api/v1/auth-sessions/verify-result. The response carries the QRAuth user identifier and, when the email scope is allowed in Settings → QRAuth, the user’s email address. The plugin uses this only to locate or create the matching WordPress user; nothing beyond a hashed link reference is retained.

-

io/a/<token> to complete the social-provider flow. This is a standard cross-domain navigation initiated by the visitor.

-

io/authorize with your OIDC Client ID, the redirect URI, and one-time state, nonce and PKCE values; the visitor signs in on QRAuth’s pages and is redirected back. json, nothing sent), the token endpoint ( /token: your OIDC Client ID and Client Secret, the one-time authorization code and PKCE verifier), and the userinfo endpoint ( /userinfo: the access token). The responses carry a site-specific QRAuth user identifier and, with the visitor’s consent, their name and email address and whether QRAuth has verified it.

The plugin uses these only to sign the visitor in to the matching WordPress account. The OIDC Client Secret is stored in your site’s options table, like the widget’s Client Secret, and is never sent to the browser.

io directly from the browser; all server-to-server calls are proxied via your site’s REST API.

Service terms and policies

  • Terms of Service: https://qrauth.io/terms
  • Privacy Policy: https://qrauth.io/privacy
  • Data Processing Addendum: https://qrauth.io/dpa
  • List of Sub-processors: https://qrauth.io/subprocessors

Source

js carries the following banner header at the top of the file:

/*! 2 * Vendored by qrauth-passwordless-social-login. Do not edit by hand.

md for provenance. */

The unminified TypeScript source files are also vendored alongside the compiled bundle inside this plugin ( assets/js/source/ ) for offline review.

0-or-later at:

  • Plugin source repository: https://github.com/qrauth-io/qrauth-passwordless-social-login

js shipped in the plugin ZIP are non-minified — read them directly without checking out the repo.

js is a pinned production build of the public @qrauth/web-components library. The non-compiled source for that library is openly available:

  • Source repository: https://github.com/qrauth-io/qrauth/tree/main/packages/web-components (MIT-licensed)
  • npm release: https://www.npmjs.com/package/@qrauth/web-components — pinned to v0.4.2, sha512 in package.json under the qrauth.webComponentsIntegrity key
  • Build instructions for the upstream library: https://github.com/qrauth-io/qrauth/blob/main/BUILDING.md

To regenerate the vendored bundle from the pinned npm release, clone the plugin source repository linked above and run from its root:

npm install npm run build:assets

js. org plugin-check job, so the bundle distributed on the directory always matches the published npm release. md in the upstream library repository above.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • qr code
  • social login
  • authentication
  • passwordless
Compatibility & maintenance

Compatibility & maintenance

Tested with WP 7.1

Marked as tested with the current WordPress 7.1 release.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.1
Minimum requirementsWordPress 6.4 · PHP 8.2
Update activity26 Oct 20267d ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

Version0.2.20.2.3
WordPress compatibility7.1.37.1.4
Version0.2.10.2.2
Version0.2.00.2.1
Version0.1.240.2.0
Version0.1.230.1.24
WordPress compatibility7.0.47.1.3
Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.