> For the complete documentation index, see [llms.txt](https://docs-shpf.bsscommerce.com/bss-b2b-lock-login-password-hide-price/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-shpf.bsscommerce.com/bss-b2b-lock-login-password-hide-price/customer-accounts-and-login-methods/manually-restore-classic-password-login-form-advanced.md).

# Manually Restore Classic Password Login Form (Advanced)

> **Advanced / technical section**\
> Only follow this if you’re comfortable editing your theme code.\
> If not, we strongly recommend using the **free setup service** instead.

This page gives a **high-level guide** for developers or technical store owners who want to manually restore the classic **email + password** login form in their theme.

***

## **1. Before you start**

**Who should use this guide**

* You are comfortable with:
  * Editing theme code (Liquid / JSON templates)
  * Using the Shopify theme editor and code editor
* You understand that:
  * Changes can affect your live store
  * The final result might not perfectly match your theme’s built-in styling

**Important: Always back up first**

1. In Shopify admin, go to **Online Store → Themes**.
2. Click **…** next to your current theme → **Duplicate**.
3. Work on the **duplicate** when editing code, then publish when ready.

***

## **2. Overview of what you’ll do**

At a high level, manual setup involves:

1. Creating or editing a **login template** that uses Shopify’s classic `customer_login` form (email + password).
2. Ensuring the login page is reachable via a **stable URL**.
3. Updating B2B Lock’s **lock messages / button links** (and/or your navigation) to point customers to this password-based login page.
4. Testing to make sure:
   * Customers can log in using email + password
   * B2B Lock recognizes them as logged-in and applies rules correctly

***

## **3. Step 1 – Create a classic login template**

1. In Shopify admin, go to **Online Store → Themes**.
2. On your **duplicate theme**, click **Edit code**.
3. Look for an existing **customer login template**, such as:
   * `templates/customers/login.liquid` or
   * `templates/customers/login.json`

If one exists and already uses a password form, you may only need to **link to it** (see Step 3).

If it doesn’t exist or only shows OTP:

4. Create a new template:
   * In the **Templates** folder, click **Add a new template**.
   * Choose `customers` as type, `login` as the template name (or a variant such as `login-password`).
5. Insert or adapt **Shopify’s classic login form** structure:
   * A form using `form 'customer_login'`
   * Input fields for:
     * **Email**
     * **Password**
   * A **Submit** button
   * Links for “Forgot your password?” and optionally “Create account”

You can refer to Shopify’s official docs or your previous theme’s login template to copy a standard login form layout, then adjust classes to match your theme’s styling.

***

## **4. Step 2 – Verify the login page URL**

Once the template is created:

1. In the theme editor, open **Customize**.
2. Navigate to the **Customer login** page (if your theme exposes it in the pages dropdown).
3. Confirm:
   * The page uses your new password-based template.
   * The URL is something stable like `/account/login` or a new custom path depending on the theme setup.

If needed, you can:

* Create a new **page** in Shopify that uses your login template and note its URL.
* Or rely on the default customer account URL if your theme maps it correctly.

This URL is what you will plug into B2B Lock’s **Login buttons** and navigation links.

***

## **5. Step 3 – Connect B2B Lock to the password login page**

Now that you have a working password login page:

1. Open the **B2B Lock** app.
2. Edit one of your locks that uses **login-based access** (e.g. “Hide prices from guests”, “Lock wholesale page”).
3. In **Step 3 – Advanced settings**, find the section where you configure:
   * **Login button URL**
   * Or any **link** that sends users to log in
4. Replace the login URL with the URL of your **password login page** (from Step 2).

For example:

* Old: `/account/login` (showing OTP)
* New: `/account/login-password` (your classic password template)

Adjust the exact paths based on how you named your template and how the theme routes customer login pages.

You can also update:

* Header/footer **“Login”** menu links in your theme navigation to point to the same URL.

***

## **6. Step 4 – Test end-to-end**

Test with at least two accounts:

1. **Existing customer with a password**
   * Go to your **password login URL**.
   * Log in using email + password.
   * Confirm that:
     * Login succeeds.
     * You’re redirected to account page or wherever your theme sends logged-in users.
   * Visit a page locked by B2B Lock:
     * You should now pass the “customer is signed in” check and see protected content.
2. **Guest / unapproved user**
   * Visit a locked page or product as a guest.
   * Confirm you see the **lock message** with the new login button.
   * Click the login button:
     * It should correctly open the **password login form**.
   * If you log in with the wrong credentials:
     * You should see an error from the login form, not from B2B Lock itself.

If anything doesn’t behave as expected:

* Double-check that:
  * The login form uses the correct `form 'customer_login'`.
  * The theme is not overriding the login route with the OTP-based layout.
  * B2B Lock’s lock buttons link to the correct URL.

If you’re stuck, you can always switch back to your **original theme** and contact BSS Commerce support for help.

***

## **7. Limitations & maintenance**

A few important caveats:

* **Design:** The manual login form might not perfectly match your theme’s native design. You can adjust CSS and classes, but this requires front-end work.
* **Shopify roadmap:** Shopify is steadily moving toward Email + OTP and may change underlying behaviour in the future. Be prepared to revisit this setup when Shopify makes major account updates.
* **Theme changes:** If you:
  * Install a new theme, or
  * Update your current theme heavily\
    You may need to **reapply** or re-check this password login customization.

Because of these limitations, the manual approach is best suited for:

* Stores with internal dev capacity
* Merchants who need a **short-to-medium term** password solution while planning a gradual move to OTP in the future

If you’d rather not manage this manually, use the simpler and safer option:

> Contact BSS Commerce and ask for the **free password login setup** — they’ll handle it for you and make sure it works smoothly with B2B Lock.
