In the United States eCommerce market, revenues continue to rapidly grow reaching $365.2 billion in 2019, and is projected to exceed $599.1 billion by 2024, according to a report from Statista. eCommerce accounts for about 10% of overall retail sales in the U.S. — a figure that has grown by 15% annually.
With the recent coronavirus (COVID-19) social distancing measures implemented resulting in over 90% of the U.S. population, these figures are likely to surge (eMarketer analysis).
Magento is one of the leading eCommerce platforms on the global market today. It offers internet retailers a comprehensive solution and more than 770,000 online stores use Magento to display and sell their products.
In this step-by-step guide, we’ll explain how to launch a Magento eCommerce store, including solutions for companies that prefer in-house development.
Why Magento? With years of experience developing eCommerce applications, experts are increasingly convinced that Magento can help businesses dramatically boost revenues. The functionality of the platform makes businesses of all sizes have success building an effective eCommerce Platform. Solutions with basic functionality are available for free with the opportunity to scale the platform with paid premium options.
Now let’s find out what Magento is all about.
Five facts about Magento
Did you know that…
- Magento ranks third out of one million top websites using eCommerce platforms in the BuiltWith ‘eCommerce Usage Distribution’ category.
- Gartner has evaluated the platform’s order management, analytics, B2B, and CPQ offerings positively for several years in a row, calling it the leader in Magic Quadrants for Digital Commerce Platforms.
- The platform, recently purchased by Adobe, expands the business capabilities of Adobe Experience Cloud, a world-renowned enterprise product.
- $155 billion in goods have been sold via Magento since its release in 2008.
- From SMEs to major industry players, a wide range of companies benefit from the platform’s capabilities: HP, Tom Dixon, NCare and others entrust their eCommerce systems to Magento. Their online stores are ideal examples of Magento websites.
Versions of Magento
The platform has a great deal to offer both for beginners who have just joined the online market and for companies with years of experience in online sales. It provides two main online commerce solutions: Magento Commerce and Magento Open Source.
How do they differ? The main difference is their intended use. Magento Commerce is available as an on-premises solution (e.g. Magento Enterprise Edition) and as a platform-as-a-service (PaaS) solution (e.g. Magento Enterprise Cloud Edition).
It is a powerful eCommerce framework that allows businesses to build systems of any size and complexity. Its commercial capacities are enriched by omnichannel order management, BI-driven analytics, and a huge marketplace for extensions. This solution is available only in the paid version, but it is worth every penny.
Meanwhile, Magento Open Source (e.g. Magento Community Edition) is a lightweight, free version available to all. Its features are limited, but it does have everything needed to build an eCommerce website that will meet the needs of small businesses, including:
- Order, payment and delivery functionalities;
- Catalog management;
- Mobile buying process;
- Access to the extensions marketplace.
Magento’s Strengths and Weaknesses
Why do many companies rely on Magento CMS for their business operations? Because of the limitless functional capabilities, Magento CMS is considered one of the most robust platforms on the market. Let’s take a look at Magento’s pros and cons to see if this eCommerce solution can solve the challenges you face with your business.
The main advantages of the Magento eCommerce platform are the following:
- Seamless B2C and B2B omnichannel experiences that can be enhanced by Magento Business Intelligence
- Extensive eCommerce functionality that supports multiple payment methods
- Unlimited customization, both built-in and via Magento extensions (known as modules or plug-ins), flexibility and scalability
- Seamless integration with third-party CRM systems (e.g. with Salesforce)
- Fast and engaging mobile shopping experiences, with particular attention paid to mobile-optimized checkouts, responsive themes and robust progressive web apps (PWAs)
- Modular architecture that allows for unlimited scalability
- Magento Open Source free version
However, the platform has some disadvantages that may dissuade some businesses from choosing the solution. The drawbacks include the following:
- High cost of an annual license for Enterprise Edition
- Customization is time-consuming
- Flawless performance requires a specific hosting environment
In our tutorial on Magento development, we’ll show you how to build an online Magento Open Source store with basic elements – a catalog, payment features and transactional email – on your own. Let’s call it Project L.
In general, Magento website development usually requires the following steps:
- Step 1: Install the platform to create a structure for your website. For this purpose, you need to download the Magento installation package, upload the files to your server and run the Magento Setup Wizard.
- Step 2: Install a theme that gives your Magento store a distinctive look — or at least as distinctive as possible, given the limited number of Magento themes.
- Step 3: Customize your website by configuring the features and capabilities that you need.
Note: Our Project L will consist of just two simple steps: installation of the Magento platform and further customization to meet your needs.
Technology Stack for Magento eCommerce Development
Before starting a project, make sure that your system meets the specifications of the platform, which is built with PHP and based on the Zend Framework. The requirements for the development of a website based on Magento 2.3 are as follows:
- Operating systems: Linux x86-64 (Debian, RHEL, Ubuntu, CentOS and others);
- Mac and Windows are not supported
- Web Server: Apache 2.4, Nginx 1.x
- Memory requirement: 2 GB of RAM
- Database: MySQL 5.6, MySQL 5.7
- PHP: PHP 7.1.3, PHP 7.2.0, PHP 7.3.0
- PHP extensions: bcmath, ctype, curl, dom, gd, hash, iconv, intl, mbstring, openssl, pdomysql, simplexml, soap, spl, xsl, zip, libxml
- PHP OPcache enabled
- Use of the PHP ‘memory_limit’ setting is recommended
- SSL: Transport Layer Security TLS version 1.2 (not older) is required to be enabled for HTTPS, PayPal and magento.com; self-signed SSL certificates are not allowed
- System tools: bash, gzip, lsof, mysql, mysqldump, nice, php, sed, tar
- Mail server: SMTP or Mail Transfer Agent (MTA)
- Supported technologies: Redis 3.2, 4.0, 5.0; Varnish 4.x, 5.2, 6.2; Elasticsearch 6.x (depending on version of Magento); RabbitMQ 3.7.x
- php_xdebug 2.5.x or later, mcrypt and PHPUnit 6.2.0 are highly recommended
Installing the Database [Step 1]
The database must always be installed on the server before setup. You will need to create a new database to be used for installation via phpmyadmin and call it Magento.
Installing the Platform [Step 2]
To begin installing Magento, you have to decide whether to install it using the Web Setup Wizard or the command line. In Project L, we will configure the platform using the Wizard. However, it is not possible to upgrade Magento or extensions further using the Wizard. Further upgrades are only available using the command line or Composer. At the same time, the Setup Wizard allows you to disable unnecessary modules before installation.
You can download the Magento software from the official Magento website using the Web Setup Wizard. There are two versions of the program: Magento Open Source and Magento Open Source with sample data. The latter is intended to help Magento developers understand the platform and take advantage of its full functionality.
Archives are available for download in three formats: .zip, .tar.bz2 and .tar.gz. Choose the program you need (with or without the sample data) and the archive format, then download the package.
Unpack the program into the directory that you have prepared on your server, and install it using the Magento Setup Wizard. You will need to set read/write permissions, which may vary depending on the number of users (shared hosting with one user or a private server with two users).
Next, start the installation using the Magento Setup Wizard. Take the following steps:
- Start your web browser.
- In the Address or Location bar, type http://<Magento host or IP>/<path to Magento root>/setup
- Click ‘I agree.’
The following information should be provided during the installation process:
- URL of your future Magento store: for example, http://www.example.com.
- URL that allows you to access the Magento Admin.
The following specifications can be made in the advanced options:
- In ‘HTTPS Options’, enable SSL (first, make sure that your web server supports it).
- Check ‘Apache Rewrites’ to improve the platform’s SEO-friendliness.
- In ‘Encryption Key’, to enable advanced protection for your confidential data, check the relevant box so that the platform generates a key for you. If you have your own key, choose ‘I want to use my own encryption key.’
- For the ‘Session Save’ option, select the relevant option to choose how you would like to save your session data by clicking the relevant option.
In addition, personalize the localization settings for your online Magento store: select your time zone, currency and language. Set up a Magento admin account to manage settings for user roles.
Once you have completed the above steps, you can configure Magento by clicking ‘Install Now.’ If the installation is successful, you will see a message that the installation has been completed successfully. The platform is now ready for further configuration.
If there are any problems during the installation process, you can start the setup process over from the beginning. The ‘Previous’ button also allows you to check your work and make corrections as you go.
Magento Hosting [Replaces Steps 1 and 2]
One particularly important alternative exists for small businesses and start-ups: a hosting server with Magento pre-installed. This may be the right choice for you if your employees are not so tech savvy, as they won’t have to master the installation process. In addition, hosting companies provide some basic support in case a company runs into difficulties with the site.
Your Magento platform is now ready for further customization and configuration, which will allow you to provide the best possible user experience and a pleasant user interface.
Theme Configuration [Step 3]
To get potential customers interested in your products, your website should look amazing and be able to capture customer’s attention. But this does not necessarily mean that you need to hire a professional web designer or Magento developer. The Magento marketplace has a number of free options with various themes and limited capabilities, which are much cheaper than web design services. In most cases, all you will have to do is to change the logo.
Simply replace the ‘Magento’ logo, which is in the upper left corner of the page, with a logo representing your online store. On the right, you will find the default welcome message, the login links and the language bar, which may also be modified according to your needs.
If you would like a mobile version of your website to launch, make sure it looks beautiful and that it can adapt to mobile screens of all sizes.
Catalog Configuration [Step 4]
Once you have completed the design of your Magento store, you need to fill it with the relevant content and specific features you need to make your online store convenient, effective, and informative. Good user experience is critical, so we need to start with the front-end (The part of your website that your customers see and interact with).
Category pages. In Magento, different products are grouped into categories. Each product belongs to one or more categories and subcategories, and requires separate pages. The demo store has a right and left sidebar and a product landing page between them. As you develop your own online Magento store, you can change their positions and fill them with the relevant content.
The category page allows you to sort products by several attributes, such as name, price and position. In addition, the user can select the number of products of a certain category to be displayed on the page, and switch between viewing them as a list and a grid.
To create a new category or manage existing ones, go to the Catalog tab and select the action you wish to take.
Product pages. The page associated with a certain product contains a brief description with details about the product, its price and a picture. Magento also has a comparison feature that allows potential customers to compare products by their different attributes. Creating and managing products is similar to manipulating categories: go to the Catalog tab, then continue.
Use the ‘Product General’ tab to enter the following information about the product:
- Product name
- Detailed description
- Short description
- Stock keeping unit
- URL key
- and more.
The ‘Price’ tab contains information about the product’s price or special prices for a limited period. The Image tab is just as important as the previous two because the image of the product is one of the main factors that affect the customer’s purchase decision. Make sure to add a high-quality base image, as well as small images and a thumbnail, so that potential customers can get an overview of the product.
There are other tabs, invisible to customers, that can help you change the product details and the appearance of the page, such as the Meta Information tab, the Design tab, and the Inventory tab.
Properties of the product. Unlike simple products with no specifications, the products sold most commonly in online stores are customizable. Therefore, it is also essential to provide various product attributes, as they not only describe products in more detail and give a more complete overview of their appearance, but also allow users to get more detailed search results.
Goods may be customized by their attributes, such as manufacturer, color and more. They can be added and managed in the Catalog tab. Begin by adding as many options as you need and filling in the fields with the necessary details. You will create a collection of attributes to combine different features of the product and cover all possible search queries.
Configuration of the Payment Method [Step 5]
The out-of-the-box version of Magento offers various basic payment methods. They include:
- Payment by bank transfer
- Cash on delivery
- Saved credit cards
- and more.
The out-of-the-box version contains a pre-integrated PayPal module, so you can start accepting orders as soon as you have configured it to meet your needs (if you use PayPal).
You can customize your payment options in the Admin menu: System > Customize > Payment Methods. Setup for all payment methods is a simple process, and you can do it by yourself. However, if you need a method that is not on the list, check the Magento Marketplace, download it and install it by following the developer’s instructions.
Setting up a transactional email. To make your customers feel confident when making orders and paying, set up a transactional email feature in System > Transactional Email. Although this option is pre-installed in Magento, you will need to make some changes.
Advanced Configuration [Step 6, Optional]
As your company expands, you may need Magento’s advanced features and capabilities. The Admin menu contains various tabs related to back-end development. By configuring them correctly, you will be able to increase the platform’s performance. Let’s take a look at some of them:
- The Dashboard tab provides a graphic view of best-selling goods, customers and others.
- The Sales tab contains information about orders, invoices, shipments, terms and conditions, taxes and more. Thus, you can track orders your customers have placed, hold or cancel them, view invoices and shipped items, collect taxes, and more.
- The ‘SEO Analytics’ tab contains some sub-tabs related to SEO. These include URL Rewrite Management, Tags and Search.
A robust analytics package will provide you with up-to-date visitor statistics, allowing you to track visitors’ origins, amounts spent in your online store, and the products they have viewed and purchased.
Advanced features. Once you have fully utilized the out-of-the-box platform features and need to expand further, go to Magento Marketplace. It provides over 2,000 free and commercial off-the-shelf modules to make up for functionality missing in the out-of-the-box version.
The number of ready-made Magento extensions on the Marketplace is comprehensive, but there is still a chance that you will be unable to find a suitable extension. In these cases, it is possible to create a custom module as a workaround. The service provider will build a Magento eCommerce site that will fit seamlessly into the context of your company and the IT landscape. Before you go down this path, familiarize yourself with the development aspects of custom Magento modules to avoid potential pitfalls.
This high-end platform provides a maximum of options for customization, adapting to the specific requirements of the company and the IT landscape. The platform has a great deal to offer, both for beginners who have just joined the online market and companies with years of experience in online sales. The self-managed installation and configuration of the platform allows enterprises the opportunity to get the most out of their strong points and increase the efficiency of their operations.
However, your project may include specifications that go beyond the capabilities of Magento Open Source. If so, contact SaM Solutions – we will help you create an effective solution based on Magento Commerce to increase your conversion rates and sales. With over 100 projects under its belt, our Magento development team will make the most of the platform’s features to provide you with a successful online Magento store.
Dmitry KoshkinManaging Director, SaM Solutions USA