Member accounts

Signing in

Customers sign in with their Shopify customer account. The Shopify sign-in block (redeemid/auth-action) starts it. The inserter also offers it as Shopify Log In, Shopify Log Out and Connect Shopify Account.

  1. RedeemID sends the visitor to Shopify with PKCE. The verifier stays on the server.
  2. Shopify returns to the callback. RedeemID exchanges the code, checks the ID token’s iss, aud, exp and nonce claims, and signs the visitor in.
  3. Tokens are stored encrypted inside the WordPress session and refresh on demand. No endpoint returns a token.
  4. Sign out goes through Shopify’s end-session endpoint, so both sessions end. WordPress’s own logout link ends only the WordPress session.

Left empty, the block’s “After log in, go to” setting returns the visitor to the page they were on. A level can also name a members’ home page, where a member lands after signing in from the home page or a plain login link.

Other ways in: a Log in with Shopify button on the WordPress login page (RedeemID → Settings → Sign-in links), Log in with Shopify and Log out menu items, and a [redeemid_login] shortcode for classic themes and page builders.

Shadow users

A customer with no WordPress account gets a shadow user with the shopify_customer role. A shadow user:

  • has no wp-admin, admin bar, password reset or author archive
  • is hidden from the user list
  • gets mail at their Shopify email

If Shopify revokes the session, a shadow user is signed out. A regular WordPress account stays signed in and loses only its Shopify features.

Linking an existing account

Nothing is linked on email alone. If Shopify’s verified email belongs to an existing, unlinked WordPress account that isn’t an administrator, the visitor is asked first: Sign in to my account links the two after they sign in to WordPress, and No thanks, use a separate account keeps them apart. Return false from the redeemid_offer_existing_account filter to skip the question.

A signed-in WordPress user can also choose Connect to Shopify. After the Shopify sign-in, RedeemID checks that Shopify marks the email as verified and that it matches the WordPress account, and the user confirms on the callback page. A mismatched or unverified email is refused with a plain message.

Administrators can’t be linked, and a linked account that later becomes an administrator can’t sign in with Shopify.

Refreshing a membership

Access arrives when Shopify’s tag webhook does, usually within seconds. A signed-in member can pull it sooner with the Refresh Membership block (redeemid/membership-refresh), which re-reads their record from Shopify and reloads the page. It’s limited to once a minute. Put it in a paywall’s teaser or the header.

The Member Account block (redeemid/member-account) is the “my membership” card: levels and when each started, the renewal date, past levels, features, when the record last synced, and links to the Shopify account and subscription management.

Disconnecting

A linked WordPress account can disconnect from Shopify. RedeemID removes the link, the mirrored fields and the stored tokens, ends the Shopify session, and keeps the visitor signed in to WordPress. A shadow user has no WordPress account to fall back to, so it can’t disconnect. Staff can also bulk-disconnect customers on RedeemID → Customers.

RedeemID is still being built

RedeemID is a WordPress plugin that lets customers sign in with their Shopify account and opens your site to what that account holds. It is in early development, so parts of this site are unfinished and details will change.

It is coming soon. We are looking for sponsors and for the first stores and publishers to use it.

For more information, email vinny@vinnysgreen.com.

Get in touch