Magento 2 Pre-Order extension allows the customer to pre-order products that are not yet available at the online store. With the help of the Magento 2 Pre-order extension, the admin can allow customers or guest users to place orders for upcoming or unavailable products on the store. The admin can set whether the customer will pay a full or partial amount of the product.
Check the preorder plugin working –
- The buyer can pre-order products.
- The module also supports the product with custom options.
- Set a custom message to display on the preorder product page.
- Admin can set preorder status and availability dates.
- Using this module customers can pay the full or partial payment.
- Set the custom percentage of the partial amount to pay for pre-ordering.
- Customers can receive an automatic email notification when a product is made available on the store and removed from the PreOrder state.
- Guest users can also use the pre-order feature and place the orders.
- The admin can display Free Preorder notes to customers.
- Multi-Lingual support / All language working including RTL.
- The code is fully open & you can customize it according to your need.
- Partial payment info is visible on the product page and the cart page only when admin enables the partial’s payments from the configurations.
- For the configurable, bundle and grouped products admin needs to add its associate product in the preorder state.
- All product types are compatible only with module version 3.0.0 and above. Module Versions below 3.0.0 will only support Simple, Configurable, Downloadable, and Virtual Products.
- MSI is compatible with module version 3.0.0 and above (not compatible with versions below 3.0.0).
Customers will get a zip folder and they have to extract the contents of this zip folder on their system. The extracted folder has an src folder, inside the src folder you have the app folder. You need to transfer this app folder into the Magento2 root directory on the server as shown below.
After the successful installation, you have to run these commands in the Magento2 root directory.
First command- php bin/magento setup:upgrade
After running the commands, you have to flush the cache from the Magento admin panel by navigating through->System->Cache management as shown below.
If you want to translate their module language from English to German then follow the path app/code/Webkul/Preorder /i18n in their unzipped Magento2 Preorder folder and then you will get a csv file with name “en_US.csv”. Now, rename that csv as to your region code and language code “de_DE.csv” and translate all right side content after the comma in your language. After editing the CSV, save it and then upload it to the path app/code/Webkul/Preorder /i18n where you have installed Magento 2 on the server. The module will get translated into your desired Language. It also supports RTL and LTR languages.
For configuring Magento 2 Pre-order extension go to Stores>Configuration>Webkul>Pre-order. The following options will be available:-
Enabled- Select Yes or No for pre-order the products.
Preorder Type – Select how the customers will make the payment for pre-order – Full Payment or Partial Payment.
Preorder Message – You have an option to display a small message on the pre-order product page.
Enable Automatic Email – When the product is made available on the store, the customers will receive an email notification for completing the order process. Select Yes for auto-email notification, else select No for manual email notification.
Store Email Address – Enter the sender’s email address for the pre-order email notification.
Email Order Note For Preorder – You have to enter a note or a message for the order email.
Free Preorder Note – Enter the message for the preorder product page that requires no advance payment. The Preorder Percent must be ‘0’ to display this note. This note will be visible on the product page.
The product In Stock Email Template – Select the email template for the product availability notification which will be sent to the customers.
Preorder Additional Fee Type – Select the preorder additional fee calculation type as fixed or percentage.
The preorder additional Fee – Enter the preorder additional fee amount.
If you are using module versions below v3.0.0 such as – v2.1.0, 2.0.6, 2.0.5, etc
If the store admins are using the Initial versions i.e. module version less than 3.0.0, then they must have to do some changes to the configuration. After which the PreOrder product will display on the store.
The admin needs to navigate to Store -> Configuration -> Catalog -> Inventory -> Stock Options.
Here on the Display Out of Stock Products, select the Yes option. After that click on the Save button.
After this, on the product edit/creation page, the admin will set the Stock Status as Out of Stock and enable the PreOrder status for the product.
Then enter the PreOrder Availability Date that will be visible on the product page at the front end. Also, enter the maximum PreOrder quantity of the PreOrder product that can be placed by the customers.
Preorder Additional Fee
The admin can even charge Preorder Additional Fee customer wise. For this, the admin needs to navigate to Customer -> All Customers as per the below image.
This will redirect the admin to the customer list page.
Here, the admin will select the customer from the list to define the preorder additional fee.
Under the Account Information section, the admin will –
- Allow Custom Preorder Fee: Set Yes to allow the preorder additional fee. Else set No.
- Preorder Fee: Enter the preorder additional fee amount.
- Preorder Fee Calculation Method: Select the preorder additional fee calculation type as fixed or percentage.
And finally hit the Save Customer button.
Now the admin needs to go to Catalog>Product and Edit the product.
- Pre-Order – Then, set Pre-Order option as ‘Yes’
- Availability – Select the date of Product Availability.
- Maximum Pre-order Quantity– And can also define the allowed preorder product purchase limit for the customer.
Preorder Product Page
The customer will see the various information about the pre-order:
- Partial Payment Info
- Preorder Message
- Product Availability Date
- Pre Order button
Pre-Order for Configurable Product
The pre-order extension works with all types of products. In the configurable product, the admin can set the Pre-Order Status as Yes for any of its associated products.
Case 1 – Full Payment
The product purchase process is the same as before, the customer can make the full payment including the shipping cost, and place the order. Now, when the product is available on the store, the customer receives an email notification.
Case 2 – Partial Payment
In partial payment, two separate orders IDs are created for completing the pre-order process. In the first order, the customer pays some percentage of the product’s price plus the shipping cost. And when the product is available on the store, the customer receives an email notification for making the remaining payment using the second-order ID.
After adding the product to the shopping cart, the customer can see the following details about preorder:
- Type: The type can be preorder the product.
- Payment Type: The preorder type can be partial or full payment for preordering the product.
- Preorder Percent: Here the percentage of the partial type payment is set by the admin.
Once the order is placed, the customer can view the order information from My Accounts>My Orders section.
Product Availability Email Notification
When the product will be available on the store, the customers will get an email notification. Then they can complete the order and pay the remaining amount.
After clicking the link in the email, the order page will open to the customer. Here, the customer will see the ‘Complete Preorder‘ button.
Pay Remaining Amount
After clicking on Complete Preorder, the remaining amount will be added to the shopping cart. The product will have a new image and a new name as it is a part of the preorder product. Also, at the checkout, the customer will not have to pay for the shipping again.
Remaining Amount Paid
The admin can view the preorders easily as per the below image.
The admin can even see a list of all the pre-orders received on the store under a separate section by navigating to Preorder>View Preorder. On the following page, the admin will see the Order#, Purchase Date, Product Name, Customer Name, Customer Email, Paid Amount, Remaining Amount, Preorder Type, Preorder Status.
To view the detailed order information, click View Order.
Notify Customers (Manually)
To send an email notification to the customer, first, select the customers from the list. Then go to Actions and select Notify Customers option. A pop-up confirmation box will appear, click OK and the email will be sent to the customer if the product is available.
Please Note – If the invoice is not generated for the pre-order, the customer will not get the Product Availability notification. Therefore, the admin must create the invoice after receiving the pre-order payment.
Here is the sample Product Availability Email Notification.
Guest Users Pre-Order
The guest users can also use pre-order functionality without logging into the store. After clicking the Pre Order button, the product will be added to the cart. The guest users then have to go to the checkout and fill in the information.
For Sign In you can click on the Sign In button.
View Pre-Order List
In the store backend, the admin can check the pre-orders details of the guest users as well.
Guest User Pre-Order Details
After clicking any of the pre-order from the list, the admin can see the detailed information about the pre-order.
Product Availability Email Notification
The guest user can complete the pre-order either by clicking the link in the email or go to the store and click ‘Orders and Returns‘ option in the footer section.
After clicking the Orders and Returns the guest user will be redirected to order and return page. Here the guest user will provide essential data for viewing their order like:
- Order ID: Here the guest will provide the order ID
- Billing Last Name: The last name which was given during the time of partial payment billing.
- Find Order By: The order can be searched based on the email or zip code.
- Email: The email address provided for the preorder.
That’s all for the Magento 2 Preorder module still have any issue feel free to add a ticket and let us know your views to make the module better http://webkul.uvdesk.com/
Current Product Version - 4.0.1
Supported Framework Version - Magento 2.0.x, 2.1.x, 2.2.x,2.3.x, 2.4.x