PaywallProject Docs
  1. Home
  2. PaywallProject plugin
  3. Let readers with an account sign in at checkout
  1. Home
  2. Stripe
  3. Let readers with an account sign in at checkout

Let readers with an account sign in at checkout

Sometimes a reader who already has an account starts checkout again. Maybe they subscribed before, or they started to subscribe and left before paying. The Step by step checkout layout has always handled this with its Account step. Now the default and hosted layouts do the same: checkout spots the account as soon as the reader enters their email and asks them to sign in right there, with a password or with a link by email. Then they carry on to payment. You don’t need to set anything up.

What the reader sees

This is how the Default checkout layout works, on your site or with Stripe’s payment page:

  1. The reader types their email on the checkout form and moves on to the next field.
  2. Checkout looks the email up. If an account already uses it, a sign-in step appears right under the email field: “You already have an account with this email. Enter your password to sign in.”
  3. The step has a Password field, a Sign in button, a Forgot your password? Email me a sign-in link link and a Use a different email link.
  4. While the step shows, the rest of checkout is hidden: payment, coupon, amount and the Subscribe button. So nobody pays without signing in first.
  5. The reader signs in. The same checkout page reloads with them signed in, and they pay as normal.
Checkout with an existing account's email, showing the sign-in step under the email field
The sign-in step appears under the email field. Payment stays hidden until the reader signs in.

If the reader typed the wrong address, they click Use a different email, or simply change the email. The payment fields come back.

Looking up the email sends nothing. PaywallProject never emails a sign-in link on its own, not even to a reader who left an unfinished checkout. An email only goes out when the reader clicks the link to ask for one.

If the lookup didn’t run, for example because the page was still loading, checkout catches the account when the reader clicks Subscribe. The same sign-in step then appears under the email field.

On the Step by step layout

The Step by step layout works the way it always has. It starts with an Account step, and the steps above match it. When the email has an account, that step shows a Password field, the Forgot your password? Email me a sign-in link link and “Enter your password to sign in.” The reader signs in and clicks Continue.

The Account step of the Step by step checkout, asking an existing reader for their password
The Account step on the Step by step layout, for an email that already has an account.

You choose the layout under PaywallProject → Checkout, or for one plan under PaywallProject → Levels.

Sign in by email

Readers who never chose a password, or who forgot it, click Forgot your password? Email me a sign-in link. The step then says “Check your inbox. We sent a sign-in link to” their address.

The sign-in step after the reader asked for a sign-in link, saying Check your inbox
The message appears in the same place, under the email field.

Which email they get depends on the account:

  • A reader whose checkout made an account but who never paid gets the Finish checkout sign-in link email. Its link signs them in and takes them back to the same plan’s checkout. A coupon they entered is filled in again.
  • Any other reader, for example an active, canceled or expired subscriber, gets a short “Your sign-in link” email. Its link signs them in and returns them to the checkout they were on.
  • Staff (administrators, and anyone else who can edit posts) get no link. Staff accounts must sign in with their password.

The response to a sign-in-link request is the same in every case, so that response does not reveal the account type.

  • Each link works once.
  • The Finish checkout link expires after 1 hour. The “Your sign-in link” link expires after 30 minutes.
  • A Finish checkout link only signs in the account it was sent to. If the account’s email or password changes, or the reader has paid since, it doesn’t sign them in.
  • To stop misuse, PaywallProject sends at most one sign-in link per account every 2 minutes, and at most 20 per hour from one internet address. If a limit stops a link, the reader still sees the same message. An earlier link is usually still in their inbox.

Too many wrong passwords

Checkout also guards against password guessing. After 5 wrong passwords for one account, or 20 from one internet address, within 15 minutes, sign-in pauses. The reader sees “Too many sign-in attempts. Please try again later.” They can still ask for a sign-in link. A successful sign-in clears the count for that account.

The same limit applies to PaywallProject’s other sign-in forms. Developers can change it with the ppaccess_login_throttle_limits filter.

Edit the email

Go to PaywallProject → Emails and choose Finish checkout sign-in link in the Template menu. It’s in the Checkout recovery group. The default subject is “Sign in to finish subscribing to {site_name}”. Keep the {resume_link} merge tag in the body. You can also use {link_expires}, which shows how long the link lasts.

The Finish checkout sign-in link template in the email editor, with its Who gets this note
The Finish checkout sign-in link template. The note at the top says who gets it and when.

The “Your sign-in link” email is plain text and has no template to edit. Every Finish checkout email appears in the email log.

Updated on November 3, 2026
Was this article helpful?

Related Articles

Get more help
Can't find the answer you're looking for? Get in touch.
Contact support