Title: EDD Auto Register
Author: Syed Balkhi
Published: <strong>Oktubre 24, 2013</strong>
Last modified: Abril 22, 2024

---

Search plugins

![](https://ps.w.org/edd-auto-register/assets/banner-772x250.png?rev=2718121)

This plugin **hasn’t been tested with the latest 3 major releases of WordPress**.
It may no longer be maintained or supported and may have compatibility issues when
used with more recent versions of WordPress.

![](https://ps.w.org/edd-auto-register/assets/icon-256x256.png?rev=2718121)

# EDD Auto Register

 By [Syed Balkhi](https://profiles.wordpress.org/smub/)

[Download](https://downloads.wordpress.org/plugin/edd-auto-register.1.4.5.zip)

 * [Details](https://ceb.wordpress.org/plugins/edd-auto-register/#description)
 * [Reviews](https://ceb.wordpress.org/plugins/edd-auto-register/#reviews)
 *  [Installation](https://ceb.wordpress.org/plugins/edd-auto-register/#installation)
 * [Development](https://ceb.wordpress.org/plugins/edd-auto-register/#developers)

 [Support](https://wordpress.org/support/plugin/edd-auto-register/)

## Description

This plugin now requires [Easy Digital Downloads](https://wordpress.org/plugins/easy-digital-downloads/)
2.9 or greater.

Once activated, EDD Auto Register will create a WordPress user account for your 
customer at checkout, without the need for the customer to enter any additional 
information. This eliminates the need for the default EDD registration form, and
drastically reduces the time it takes your customers to complete their purchase.

Guest checkout is required so the plugin overrides the setting. The registration
form is hidden on checkout while the plugin is active.

There are various filters available for developers, see the FAQ tab for more information.

**More extensions for Easy Digital Downloads**

You can find more extensions (both free and commercial) from [Easy Digital Downloads’ website](https://easydigitaldownloads.com/downloads/)

## Screenshots

 * [[
 * The standard purchase form which will create a user account from the customer’s
   Email Address
 * [[
 * The plugin’s simple login form when both “Disable Guest Checkout” and “Show Register/
   Login Form?” are enabled
 * [[
 * The error message that shows when “Disable Guest Checkout” is enabled, but “Show
   Register / Login Form?” is not

## Installation

 1. Unpack the entire contents of this plugin zip file into your `wp-content/plugins/`
    folder locally
 2. Upload to your site
 3. Navigate to `wp-admin/plugins.php` on your site (your WP Admin plugin page)
 4. Activate this plugin
 5. That’s it! user accounts will automatically be created for your customers when 
    they purchase your product for the first time and their login details will be emailed
    to them

OR you can just install it with WordPress by going to Plugins >> Add New >> and 
type this plugin’s name

## FAQ

### How can I modify some of the key aspects of the plugin?

There are filters available to modify the behavior of the plugin:

 1. edd_auto_register_email_subject
 2. edd_auto_register_headers
 3. edd_auto_register_insert_user_args
 4. edd_auto_register_email_body
 5. edd_auto_register_error_must_login
 6. edd_auto_register_login_form
 7. edd_auto_register_disable
 8. edd_auto_register_can_create_user

### Can you provide a filter example of how to change the email’s subject?

Add the following to your child theme’s functions.php

    ```
    function my_child_theme_edd_auto_register_email_subject( $subject ) {

        // enter your new subject below
        $subject = 'Here are your new login details';

        return $subject;

    }
    add_filter( 'edd_auto_register_email_subject', 'my_child_theme_edd_auto_register_email_subject' );
    ```

### Can you provide a filter example of how to change the email’s body?

Add the following to your child theme’s functions.php

    ```
    function my_child_theme_edd_auto_register_email_body( $default_email_body, $first_name, $username, $password ) {
        $user = get_user_by( 'login', $username );
        $key  = get_password_reset_key( $user );
        if ( is_wp_error( $key ) ) {
            return false;
        }

        // Modify accordingly
        $message  = sprintf( __( 'Dear %s', 'edd-auto-register' ), $first_name ) . ",\n\n";
        $message .= __( 'Below are your login details:', 'edd-auto-register' ) . "\n\n";
        $message  = sprintf( __( 'Your Username: %s', 'edd-auto-register' ), sanitize_user( $username, true ) ) . "\r\n\r\n";
        $message .= __( 'To set your password, visit the following address:' ) . "\r\n\r\n";
        $message .= network_site_url( 'wp-login.php?action=rp&key=' . $key . '&login=' . rawurlencode( $username ), 'login' ) . "\r\n\r\n";
        $message .= sprintf( __( 'Login: %s', 'edd-auto-register' ), wp_login_url() ) . "\r\n";

        return $message;
    }
    add_filter( 'edd_auto_register_email_body', 'my_child_theme_edd_auto_register_email_body', 10, 4 );
    ```

### Can you provide an example how to disable auto register?

Add the following to your child theme’s functions.php to disable auto register based
on the products purchased.

    ```
    add_filter( 'edd_auto_register_can_create_user', 'prefix_auto_register_can_create_user', 10, 3 );
    /**
    * Filters whether a user can be created for an order.
    *
    * @param bool        $can_create_user
    * @param EDD_Payment $payment
    * @param string      $user_name
    * @return bool
    */
    function prefix_auto_register_can_create_user( $can_create_user, $payment, $user_name ) {
        // Set up the array of items in the cart.
        $items = array();
        foreach ( $payment->cart_details as $item ) {
            $items[] = $item['id'];
        }

        // Which items are valid for creating a user account.
        $items_for_auto_register = array( 2092 );

        // If there are no downloads that require auto register then disable it.
        if ( ! array_intersect( $items, $items_for_auto_register ) ) {
            return false;
        }

        return $can_create_user;
    }
    ```

### How can I disable the email from sending to the customer?

There’s an option under downloads → settings → extensions

## Reviews

![](https://secure.gravatar.com/avatar/cc672217b1e53ff6449684a15b54eed0b2c6cbf3e0e88fb46a05fc6075900cda?
s=60&d=retro&r=g)

### 󠀁[Long time user. Very excited about the recent updates!](https://wordpress.org/support/topic/long-time-user-very-excited-about-the-recent-updates/)󠁿

 [Daan van den Bergh](https://profiles.wordpress.org/daanvandenbergh/) Mayo 13, 
2022

Just wanted to stop by and say thank you for the recent updates! I’ve been using
this plugin for almost 2 years, and was happy that it always just worked. But, since
it was never updated I was always waiting for it to crash after an update of WordPress.
It didn’t, fortunately. 🙂 Happy to see that you guys are giving it some love again
🙂

![](https://secure.gravatar.com/avatar/097a41bffcd0647ae52ccde6e7a188be5162fe39fbbcc13369f888a2d11c235f?
s=60&d=retro&r=g)

### 󠀁[Works Well. Saves Time. Eliminates Confusion.](https://wordpress.org/support/topic/works-well-saves-time-eliminates-confusion/)󠁿

 [Dave Warfel](https://profiles.wordpress.org/davewarfel/) Oktubre 29, 2019 1 reply

This is an excellent extension to add to Easy Digital Downloads. It eliminates confusion
and friction for users when they purchase something on your site because it automatically
creates an account for them and logs them in. It’s especially useful when selling
online courses or memberships on your site. I use it specifically for LearnDash 
and it works great. Because it creates the account & logs the user in immediately
after a purchase, they can begin consuming your content or taking your course right
away.

![](https://secure.gravatar.com/avatar/6bc8a2a4b6218ff2728f2246f464fad97174190d0351a0cf338e8ced9f21d5c6?
s=60&d=retro&r=g)

### 󠀁[Its horrible security to send out passwords in cleartext.](https://wordpress.org/support/topic/its-horrible-security-to-send-out-passwords-in-cleartext/)󠁿

 [Nico](https://profiles.wordpress.org/nico23/) Pebrero 20, 2018 3 replies

Security is sadly a topic that the EDD people to not care about. Sending clear text
passwords out to people should not be done. I have fixed this with this code. This
hides the field be then tells the users after the did the purchase that they should
create a password. Not very user friendly, I currently had disabled it but I am 
thinking of activating it again because I think my sales gone down because if this.
<?php namespace nextgenthemes\website; add_filter( 'edd_auto_register_email_body',
__NAMESPACE__ . '\\edd_auto_register_email_body', 10, 4 ); function edd_auto_register_email_body(
$default_email_body, $first_name, $username, $password ) { // Email body $out = 
__( "Dear", "edd-auto-register" ) . ' ' . $first_name . ",\n\n"; $out .= sprintf(
__( "Thanks for your purchase! A account with a random password has been created
for you. Please <a href='%s'>follow the lost password procedure</a> to create a 
secure password for your account in case you want to ask a support question or access
your downloads. (For security reasons passwords are not send out in cleartext)","
nextgenthemes-website" ), wp_lostpassword_url() ) . "\n\n"; $out .= __( "Your Username:","
edd-auto-register" ) . ' ' . $username . "\n\n"; return $out; } Also using emails
and usernames isn’t exactly great either as you can guess them form the author slugs
WP generates from them. My Idea would be so simply use javascript on checkout to
fill in a random generate password on checkout automatically. WP already has a function
for this. And do not display the 2nd password confirm field at all, and maybe even
autofill the username field with something based on the first/last name they enter.
To elaborate on my point that this is not the first time I notice this pattern from
EDD: They had ssl_verify => false all over their code, I think its now changed it
now changed some areas, or at least the is a option to verify your shops ssl. But
with the software licensing extension those API calls and downloads are (or at lease
were) totally unresponsively ignoring SSL altogether. Because some WP bug that was
fixed like 10 years ago. Their entire attitude to simply ignore it because it may
fail in some very rare cases is very bad. It could lead to a chain reaction from
a MITM attack on easydigitaldownloads.com that all extensions they ship to customers
would ship from hackers sites instead with malicious code and given that many of
their customers use EDD SL as well they could spread it from there. Because all 
the API calls simple ignor(ed) SSL! Not a security expert but at least I pay a little
bit attention. Also, and my guess is that this is very common in this industry. 
They do support via email and they expect you to send them passwords to your sites
in cleartext! Great Idea, bad execution.

![](https://secure.gravatar.com/avatar/53b2430e8ba60dd7215e401d229edd64aebe9abccea61e1d35554e38030e2430?
s=60&d=retro&r=g)

### 󠀁[Works, I have one suggestion](https://wordpress.org/support/topic/works-i-have-on-suggestion/)󠁿

 [justinestrada](https://profiles.wordpress.org/justinestrada/) Mayo 15, 2017 1 
reply

This plugin works, I have a suggestion though. In the EDD settings > Misc > Checkout
Settings > Show Register / Login Form? You should remove the first two options in
the Select field since they no longer apply. I got stuck on this setting for 30 
second, no biggy but would make setup smoother.

![](https://secure.gravatar.com/avatar/5776e9351966fbb4495abc43169eb564e7fb6ce5a6b6536cb04aa768a5a3c5de?
s=60&d=retro&r=g)

### 󠀁[Great for checkout conversions](https://wordpress.org/support/topic/great-for-checkout-conversions/)󠁿

 [Phil Derksen](https://profiles.wordpress.org/pderksen/) Mayo 1, 2017

Keep your checkout fields minimal to improve conversions while still getting your
customer accounts established. Definitely a key add-on for my EDD sites. Can’t do
without it now.

![](https://secure.gravatar.com/avatar/58aa3fad67b1f7454dd16ad6acf7a85d800decbba2e31aef27283743af89bb70?
s=60&d=retro&r=g)

### 󠀁[Works perfectly](https://wordpress.org/support/topic/works-perfectly-868/)󠁿

 [Ruben Garcia](https://profiles.wordpress.org/rubengc/) Setyembre 3, 2016

I wish there was an option to enable the introduction of the password directly from
the form

 [ Read all 12 reviews ](https://wordpress.org/support/plugin/edd-auto-register/reviews/)

## Contributors & Developers

“EDD Auto Register” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Syed Balkhi ](https://profiles.wordpress.org/smub/)
 *   [ Easy Digital Downloads ](https://profiles.wordpress.org/easydigitaldownloads/)
 *   [ Chris Klosowski ](https://profiles.wordpress.org/cklosows/)
 *   [ Robin Cornett ](https://profiles.wordpress.org/littlerchicken/)
 *   [ Andrew Munro / AffiliateWP ](https://profiles.wordpress.org/sumobi/)
 *   [ Pippin Williamson ](https://profiles.wordpress.org/mordauk/)

“EDD Auto Register” has been translated into 9 locales. Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/edd-auto-register/contributors)
for their contributions.

[Translate “EDD Auto Register” into your language.](https://translate.wordpress.org/projects/wp-plugins/edd-auto-register)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/edd-auto-register/),
check out the [SVN repository](https://plugins.svn.wordpress.org/edd-auto-register/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/edd-auto-register/)
by [RSS](https://plugins.trac.wordpress.org/log/edd-auto-register/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### Version 1.4.5, April 23, 2022

 * Dev: Updated for PHP 8.1+ compatibility.

#### Version 1.4.4, September 1, 2022

 * Fix: The password link email tag was not always working.
 * Fix: A notice has been added to the “Limit Auto Register” setting when Recurring
   is active.
 * Fix: Repeat orders for logged in users could create new users.
 * Fix: The user ID is now assigned to the order directly in EDD 3.0.
 * Dev: The deprecation has been removed from the original email functions so that
   other plugins could unhook them.

#### Version 1.4.3, June 23, 2022

 * Fix: The customer address is not added by Auto Register in EDD 3.0 as it’s done
   in core.
 * Fix: For sites which had customized the user notification to include the password
   in plain text, the hashed password was being sent instead.

#### Version 1.4.2, May 12, 2022

 * New: Added an option to only register new users for off-site gateways when payments
   are successful.
 * Fix: Auto-registering users on multisite installs would throw an undefined variable
   notice.
 * Fix: Viewing the Invoices settings would throw an undefined variable notice.

#### Version 1.4.1, April 22, 2022

 * Fix: Auto Register prevented new subscriptions from being purchased.
 * Fix: A deprecation notice was being shown in PHP 8.0.

#### Version 1.4, April 20, 2022

 * Fix: Guest checkout settings were confusing when Auto-Register was active.
 * Fix: User address information was not always saved.
 * New: Added email tags to include Auto Register account information in the purchase
   receipt.
 * New: Run Auto Register on manually created orders.
 * New: Auto Register now works for CSV payment imports.
 * New: `edd_auto_register_can_create_user` filter allows developers to modify whether
   a user can be created based on the payment data.
 * Dev: Auto Register now implements the extension loader framework.

#### Version 1.3.14, October 28, 2020

 * Fix: New user email not sent when Auto Register is active.
 * New: Add Danish translations.
 * New: Add Auto Register section in EDD Extension settings.

#### Version 1.3.13, October 22, 2019

 * Fix: Fatal error when Easy Digital DOwnloads core is not active.

#### Version 1.3.12, October 9, 2019

 * Fix: Removed legacy edd_debug_log function declaration in order to avoid producing
   errors during EDD Updates.

#### Version 1.3.11, July 26, 2019

 * Fix: Fixed integration issue with Recurring Payments where payments were being
   prevented.
 * New: Some EDD 3.0 compatibility improvements.
 * New: Improved integration with Software Licensing by using recommended methods.
 * New: Improved some debugging assistance code.
 * New: Improved requiring EDD core’s existence if Auto Register installed without
   it.

#### Version 1.3.10, February 16, 2018

 * Fix: User accounts not created with Free Downloads

#### Version 1.3.9, April 27, 2017

 * Fix: User not added to subsite when user already exists in site network

#### 1.3.8

 * Fix: Invalid foreach error when purchase does not contain license keys

#### 1.3.7

 * Fix: Ensure user ID is set on license keys properly

#### 1.3.6

 * Updated plugin authors

#### 1.3.5

 * Fix: Users not automatically logged in when using the Free Downloads extension

#### 1.3.4

 * Fix: Users not automatically logged in when using Buy Now buttons
 * Fix: Manual purchases incorrectly assigned to site administrator that created
   the payment

#### 1.3.3

 * Tweak: Added support for other extensions to run the registration process before
   a payment is recorded
 * Fix: Removed unused global variables
 * Fix: Properly force Guest Checkout to be enabled

#### 1.3.2

 * Fix: Correct compatibility with Easy Digital Downloads user verification process.

#### 1.3.1

 * Fix: Issue with customers being forced to log in

#### 1.3

 * Fix: Resolves compatibility issues with Easy Digital Downloads 2.1+
 * Fix: User accounts now created anytime a payment record is created, not just 
   during checkout to resolve compatibility with some extensions
 * Fix: Dramatically simplified code base

#### 1.2.1

 * Fix: EDD activation check

#### 1.2

 * Tweak: Pass $user_data along to edd_auto_register_insert_user_args filter
 * Tweak: Pass username through sanitize_user() function

#### 1.1

 * New: User account creation now closely mimics that of EDD core meaning a user
   account will be created no matter what payment gateway is used
 * New: “Lost Password?” link added to “login to purchase” form
 * New: Setting to disable the admin notification
 * New: Setting to disable the user notification
 * New: edd_auto_register_insert_user_args filter. This can be used to do things
   such as modify the default role of the user when they are created
 * Tweak: If a user who previously had an account returns to make a purchase it 
   will no longer display “Email Address already in use”. Instead it will be treated
   as a guest purchase
 * Tweak: Email sent to user now includes login URL
 * Tweak: Major code overhaul
 * Tweak: New user email no longer uses the default EDD receipt template so it’s
   not styled like a receipt if you have a custom template.

#### 1.0.2

 * New: Adding custom translations is now easier by adding them to the wp-content/
   languages/edd-auto-register folder
 * New: Spanish and Catalan translations. Thanks to Joan Boluda!
 * Fix: Undefined index errors when form was submitted without email address
 * Fix: Text strings not being translated properly in registration email

#### 1.0.1

 * Fixed filter names for error messages

#### 1.0

 * Initial release

## Meta

 *  Version **1.4.5**
 *  Last updated **2 tuig ago**
 *  Active installations **1numero_pormat_thousands_sep000+**
 *  WordPress version ** 4.4 or higher **
 *  Tested up to **6.2.9**
 *  PHP version ** 5.4 or higher **
 *  Languages
 * [Danish](https://da.wordpress.org/plugins/edd-auto-register/), [Dutch](https://nl.wordpress.org/plugins/edd-auto-register/),
   [English (US)](https://wordpress.org/plugins/edd-auto-register/), [French (France)](https://fr.wordpress.org/plugins/edd-auto-register/),
   [German](https://de.wordpress.org/plugins/edd-auto-register/), [Italian](https://it.wordpress.org/plugins/edd-auto-register/),
   [Kurdish (Sorani)](https://ku.wordpress.org/plugins/edd-auto-register/), [Polish](https://pl.wordpress.org/plugins/edd-auto-register/),
   [Russian](https://ru.wordpress.org/plugins/edd-auto-register/), and [Swedish](https://sv.wordpress.org/plugins/edd-auto-register/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/edd-auto-register)
 * Tags
 * [digital downloads](https://ceb.wordpress.org/plugins/tags/digital-downloads/)
   [e-downloads](https://ceb.wordpress.org/plugins/tags/e-downloads/)[easy digital downloads](https://ceb.wordpress.org/plugins/tags/easy-digital-downloads/)
   [edd](https://ceb.wordpress.org/plugins/tags/edd/)[purchase](https://ceb.wordpress.org/plugins/tags/purchase/)
 *  [Advanced View](https://ceb.wordpress.org/plugins/edd-auto-register/advanced/)

## Ratings

 4.7 out of 5 stars.

 *  [  11 5-star reviews     ](https://wordpress.org/support/plugin/edd-auto-register/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/edd-auto-register/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/edd-auto-register/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/edd-auto-register/reviews/?filter=2)
 *  [  1 1-star review     ](https://wordpress.org/support/plugin/edd-auto-register/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/edd-auto-register/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/edd-auto-register/reviews/)

## Contributors

 *   [ Syed Balkhi ](https://profiles.wordpress.org/smub/)
 *   [ Easy Digital Downloads ](https://profiles.wordpress.org/easydigitaldownloads/)
 *   [ Chris Klosowski ](https://profiles.wordpress.org/cklosows/)
 *   [ Robin Cornett ](https://profiles.wordpress.org/littlerchicken/)
 *   [ Andrew Munro / AffiliateWP ](https://profiles.wordpress.org/sumobi/)
 *   [ Pippin Williamson ](https://profiles.wordpress.org/mordauk/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/edd-auto-register/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://easydigitaldownloads.com/donate/)