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.
- RedeemID sends the visitor to Shopify with PKCE. The verifier stays on the server.
- Shopify returns to the callback. RedeemID exchanges the code, checks the ID token’s
iss,aud,expandnonceclaims, and signs the visitor in. - Tokens are stored encrypted inside the WordPress session and refresh on demand. No endpoint returns a token.
- 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.