# Unable to create a customer account on PrestaShop

> A sign-up form that validates nothing, or a 500 error the moment you click “Create my account”: in most cases the cause traces back to an email address already in the database, even on a disabled or never-confirmed account, or to the welcome email that fails to send right after the account is created.

- Source canonique : [https://allaux.fr/en/prestashop/problemes/impossible-creer-compte-client](https://allaux.fr/en/prestashop/problemes/impossible-creer-compte-client)
- Langue : EN
- Dernière mise à jour : 2026-09-30

## Direct answer

> Search for the address in Customers > Customers with the active-accounts filter removed: the email column of ps_customer is unique, and a disabled account already holding that address makes registration fail. If you get a 500, set _PS_MODE_DEV_ in config/defines.inc.php, then disable any captcha or quick-signup module added to the form.

## Why sign-up most often fails

The customer table enforces a uniqueness constraint on the email address. If an account already exists with that address, even disabled, even never confirmed, the sign-up is rejected, sometimes without a message clear enough for the visitor to understand why.

A captcha module or a “quick account creation” module layered on top of the native form can also conflict with it, intercepting the submission or altering fields the sign-up controller expects.

## A 500 error exactly when confirming sign-up

> This specific case very often comes not from account creation itself, but from the welcome email sent immediately after: a missing or broken email template crashes the request after the account has already been created in the database. The account can then exist despite the error shown, which explains a second attempt being blocked by the email uniqueness constraint.

## What I check when sign-up is blocked

1. **Whether an account already exists** — Searching the email address in the customer table, including among disabled accounts.
2. **Modules active on the form** — Captcha, quick account creation, or any module altering the native sign-up form.
3. **The welcome email template** — Checking that the email template sent on account creation is present and correctly configured.
4. **The server error log** — The precise message at the moment of the 500 error, usually far more informative than what the visitor sees.

## One-off clean-up or a custom form

> A ghost account to clean up in the database, or a conflicting module to disable, usually gets resolved quickly. A sign-up form with extra fields, specific validation or double opt-in, on the other hand, needs custom development of the native form.

## Related pages

- **Error 500 or blank page on PrestaShop** — The general diagnosis for a 500 error, for cases beyond the sign-up form alone. ([/prestashop/erreur-500](/prestashop/erreur-500))
- **Order confirmation emails not being received** — The same kind of cause, an email send silently failing, applied to orders rather than sign-up. ([/prestashop/problemes/emails-confirmation-commande-non-recus](/prestashop/problemes/emails-confirmation-commande-non-recus))
- **Custom PrestaShop module development** — For a sign-up form with extra fields or a double opt-in. ([/prestashop/module-sur-mesure](/prestashop/module-sur-mesure))

## FAQ

### The customer says they never signed up, why is their email rejected?

An account is sometimes created automatically during an earlier guest order, or a previous attempt failed partway through without being visible to them. The address already exists in the database even without their knowledge.

### Why does a 500 error appear right when confirming sign-up?

Very often it’s the welcome email failing to send right after the account is created, not the account creation itself. The email template is the first thing to check.

### Can a blocking account be removed without losing its orders?

Yes, an account can be disabled or its address freed up without touching orders already recorded, which stay linked regardless of the account’s status.

### Can a required field be added to the sign-up form?

Not from the standard back office. Adding a field, specific validation or double opt-in requires building an extension of the native form.

### Can an account created via a guest checkout block a later sign-up?

It depends on the checkout setting used: some configurations create an account tied to the email address even for a so-called guest order, which can then collide with a genuine sign-up at that same address.
