Magento Interview Questions

What is Magento?

Magento is an open source E-commerce software, created by Varien which is useful for online business and it has the flexible modular architecture. It is scalable and it has many control options that helps the user. Magento uses E-commerce platform which offers companies ultimate E-commerce solutions and extensive support network.

Why to use Magento?

The uses of Magento are:

  • Magento is open source E-commerce software.
  • It is scalable and offers small companies to build business.
  • It provides the searching and sorting of products in several ways.
  • Easily integrates with many of the third-party sites which are needed to run effective E-commerce website.
  • Using this, customer can order or purchase number of products. There are no limits on number of purchasing products.

List the Web-Hosting sites of Magento?

The Web-Hosting sites of Magento are:

  • SiteGround
  • BlueHost
  • HostGator
  • Inmotion
  • Arvixe
  • site5

What are disadvantages of Magento?

The disadvantages of Magento are:

  • Magento uses larger disk space and memory.
  • It takes much time to build the customized functionality.
  • It is very slow compared to other E-commerce sites.
  • It needs proper hosting environment, if the hosting environment is improper the user can face the problems.

Name the web-server that supports Magento?

The Web-server that supports Magento are:

  • Apache 2.x
  • Nginx 1.7.x

What are Magento products?

Products are the items or things that are sold in Magento. Product can be anything that is capable of satisfying customer needs. This includes both physical products and services.

Name the product types that are available in Magento?

The product types available in Magento are:

  • Simple Products
  • Grouped Products
  • Configurable Products
  • Virtual Products
  • Bundled Products
  • Downloadable Products

What is Inventory?

Inventory allows setting a product’s stock quantity. For instance, you have a product with 100 units in stock. If you set the stock availability to “Out of Stock” then it will force the item to be out of stock.

Name the categories of E-Commerce?

The categories of E-Commerce are:

  • Business to Business(B2B)
  • Business to Consumer(B2C)
  • Consumer to Consumer(C2C)
  • Consumer to Business(C2B)

What does Rate Percent mean in Manage Tax Rate window?

Rate Percent specify the percent of the tax rate.

What does Priority field specifies in Manage Tax Rules?

Priority field specifies when the tax should be applied to other tax rules.

What is the used of Zero Subtotal Checkout panel?

The Zero Subtotal Checkout panel is a payment option that displays when order total is zero and not required to enter payment details for the customer.

What is the used of 3D Secure Card validation field in Saved CC?

It is additional security functionality where customer needs to provide credit card password to complete the purchase order.

Which are the methods of PayPal Payment Gateways?

The two methods of PayPal Payment Gateways are:

  • Payflow Pro (Includes Express Checkout)
  • Payflow Link (Includes Express Checkout)

What is Payflow Pro?

The Payflow Pro option is customizable payment gateway which can be used with merchant account to process credit card transactions.

What is Payflow Link?

Payflow Link option often called as hosted payment gateway that keeps customer on your site by providing fast and easy way to add transaction processing to your site.

What is Google checkout in Magento?

Google Checkout is online payment processing service provided by Google. Magento allows integration of online stores with Google checkout. It is like PayPal that simplifies the process of paying for online purchases.

What is Magento Manage Order?

Order management is important thing which allows business to run smoothly and keeps customers happy, making them more likely to visit your site in the future.

What is Magento Google Analytics?

Google Analytics is a finest Google service for those who are actively managing websites and adds analytics to Magento store including Ecommerce tracking and conversions of their websites.

What is the use of Page Layout in Magento?

Layout files are useful in rendering front pages of Magento.

What is Magento Content Management System(CMS)?

Magento CMS (Content Management System) section is used to manage all web site pages. It is a way of promoting the products by providing valuable information to the customers and increases visibility to search engines.

What are Static Blocks?

Static block is a piece of content can be used anywhere in the pages. Magento allows creating blocks of content that can be used through the store and can be added to any page or another block

What are Polls?

Polls are used to get customer’s opinions and preferences. The poll results appear immediately after response is submitted.

How to Optimize the Magento Environment?

Following points describe how to optimize the Magento environment

  • It uses complex database, so that it needs to be run on dedicated servers.
  • Magento application could be optimized by using cloud computing.
  • Merge you JavaScript and CSS files which reduces the load time dramatically since its loading only one merged file.
  • Proper MySQL configuration is one of the most important aspects in terms of performance.
  • Always upgrade to the latest Magento version allows to perform better.

How to Optimize Magento Configuration?

The following points specify how to optimize the magento configuration

  • To speed up Magento performance, don’t run mysql and web server on the same machine.
  • Do not host files on your web server that you do not use.
  • Optimization of session storage.
  • Enabling Magento flat catalog. (Magento uses a complex and resource-intensive Entity Attribute Value  [or EAV]based catalog). After initial catalog establishment, enabling the flat catalog can dramatically improve database querying time.
  • Identification and disabling of unused Magento modules.

What is the process of Code Optimization?

The process of Code Optimization are:

  • Removal of unused or unnecessary code processes.
  • To optimize Magento performance, JavaScript and CSS files need to be compressed and aggregated.
  • Conformance of all site images to optimal web image sizes.
  • Identification of bottlenecks(process that causes the entire process to slow down or stop) processes in both front-end and back-end.

How to improve the performance of database?

The following points describe how to improve the performance of database:

  • Unused data must be cleaned up regularly for better performance.
  • Optimization of database queries.
  • Configuration of setting and limits of the database server (e.g. memory setting, query cache, sort buffer optimization).

Which is the PHP version used for magento?

PHP 5.4 +

What is WSLD?

It stands for Web Services Description Language. It is used for describing web services and how to access them.

What does Only X left Threshold means in Stock Option?

It is used to set threshold number. When the units of that product are drop to that number, it will display Only X left message on the product details page.

What is Magento Payment Gateway?

Payment gateway processes the credit card data securely between customer and merchant and also between merchant and the payment processor. It is like checkpoint that protects customers against attempting to gather personal and financial information from customers and also act as mediator between the merchant and sponsoring bank.

What is the process of Order Life cycle in Magento?

Orders follow a standard life cycle process. When customer place product orders, it arrive in the administration interface with a pending status. When order is processed, the status of order changes according to current state in the processing workflow. Once the invoice is created for the order, the status changes from pending to processing status. Next it creates shipment for an order which changes the status from pending to complete status.

Which are the two sections present in Design Section?

The two sections present in Design section are:

  • Page Layout
  • Custom Design

What does the Page Layout section contains?

The Page Layout section contains a Layout option which allows selecting layout as per your choice and Layout Update XML option inserts the XML code.

What is the use of Meta Data section while setup new pages?

The Meta Data section contains Keywords and description of the page.

How to subscribe to Newsletters using Magento?

Customer can subscribe to Newsletters using Magento. Customer can sign up for the Newsletter when he creates a new customer account which contains checkbox for signing up. For creating Newsletters you need to enable Newsletter option in your magento to make sure that customer has confirmed to receive Newsletter.

How to optimize the Magento front-end performance?

The following points show how to optimize the Magento front-end performance:

  • Use the latest version of php, so that you can perform front-end operation much better and faster. The newest released version may cause the errors, so carefully read the release notes and check out the new version.
  • Use the clean database to improve the performance of magento. The database logs need to be clear regularly. The database stores the automatically created logs to keep track of record session and interaction.

What is grouped product?

This is a group of simple products. In this type, you cannot specify a specific price for product; you can just specify the discount.

What is Configurable Products?

In this type, customer can select products according to their color and size before purchasing. Example: Cell phones obtained in different colors and sizes.

What are Bundled products?

Bundled products are those products which cannot be sold separately and doesn’t give any choice for end user.

What is the use of Backorder field in Product Stock Option Panel?

If it is enabled, customer can buy products even if they are out of stock.

What are Tax rules?

Tax rules are entities that combine product tax classes, customer tax classes and tax rates.

44.What is the use of Manage store section?

A:Manage Stores section, you will see website names, store names and Store View Name columns.

What is E-commerce?

E-commerce (Electronic Commerce) is a type of business that involves the commercial transaction or purchasing or selling of goods and services through electronic channels known as internet.

What are the features of Magento?

The features of Magento are:

  • Magento provides different payment methods such as credit cards, PayPal, cheques, money order, Google checkouts.
  • It provides shipping of products in one order to the multiple addresses.
  • Easy to manage the orders by using admin panel.
  • It filters the products and displays in grid or list format.

What are the advantages of Magento?

The advantages of magento are:

  • It is user friendly E-commerce software.
  • It is compatible with Smartphone’s, tablets and other mobile devices.
  • It provides multiple payment options so every visitor can make payment based on their preferred payment gateway.
  • It has many extensions which supports for the development of an online store.

What database does Magento supports?

MySql Database

Which is the MySql version used for magento?

MySQL 5.1

Mention what is the architecture of Magento? What are the different versions of Magento?

Magento architecture is a typical PHPMVC (Model-View-Controller) application, where all the Controllers will be in one folder and all the Models in another, etc.  Based on their functionality files are grouped together, which are referred as modules in Magento.

Different version of Magento includes

  • Magento Enterprise
  • Magento .go
  • Magento Community

What was the initial release date of Magento?

Magento was initially released on 31st March, 2008.

Explain the architecture of Magento?

The architecture of Magento is a typical PHP MVC (Model-View-Controller) application where the entire controller will be in one folder and all the models in another. Files are grouped together and known as modules in Magento.

What technology does Magento use?

Magento uses PHP as a web server scripting language and MySQL as a database.

What are the different features of Magento?

Some of the basic features of Magento are:

  • SEO Friendly
  • Google sitemap support
  • Reporting and analytics
  • Customer accounts
  • Order management
  • Site management
  • Payment
  • Marketing promotion and tools
  • International support
  • Extremely modular architecture

What are the limitations of Magento?

There are three reasons to use UNITS in programming:

  • Magento is written in PHP so it is comparatively slower in performance to other e-Commerce solutions.
  • Magento requires more space and memory. It can consume gigabytes of RAM during heavy processes.
  • It becomes complex if it is not using object-oriented programming.

How can you enhance the Magento performance?

The first Pascal standard was documented by the author of the Pascal programming language Niklaus Wirth but it was an unofficial Pascal standard.

  • Disable the Magento log
  • Disable any un-used modules
  • Magento Caching
  • Optimize your image
  • Optimize your Server
  • Use a Content Delivery Network (CDN)
  • Put Stylesheets at the Top
  • Put Scripts at the Bottom
  • Avoid CSS Expressions

How can you make Magento more secure for the client?

You can use following instructions to make Magento more secure for the client:

  • Use a strong password and change them at regular interval.
  • Disable remote access to Magento Connect Manager.
  • Disable Downloader on production sites.
  • Restrict access to safe IP addresses.

What type of web applications are created in Magento?

Magento is mainly used for shopping cart software.

What is EAV in Magento?

EAV stands for Entity Attribute Value. It is a technique that facilitates users to add unlimited columns to their table virtually.

How many tables will be created in EAV module in Magento? Name them?

EAV module will create 6 tables in database.

They are as follows:


  • module
  • module_datetime
  • module_decimal
  • module_int
  • module_text
  • module_varchar

Explain the difference between EAV and flat model?

EAV database model is fully in normalized form. Each column’s value is stored in their respective data type table which makes it more complex as they have to join 5-6 tables even if you need only one detail. In EAV, columns are called attributes.

Flat model uses just one table. It is not normalized and uses more database space. It is not good for dynamic requirements where you may have to add some more columns in future. Its performance is fast as it needs only one query instead of joining 5-6 tables. In flat model, columns are called fields.

What are Magento product types?

  • Magento simple product: It is used for a single item without any specific selectable variations. For example, a pen, copy, etc.
  • Magento grouped product: It is used for a combination of Magento simple product. For example, a pen and copy together.
  • Magento configurable product: It is used for a single item with specific selectable variations. For example, a pen with different color options.
  • Magento virtual product: It is used for a virtual item i.e: non touchable item. For example, reservation, insurance, etc.
  • Magento bundle product: It is used for a bundle of simple products. For example, laptop with various items such as processor, hard disk, RAM, etc.
  • Magento downloadable product: It is used for online software items. For example, PowerPoint presentation, MP3 files, servers, etc.

Explain the difference between Mage::getModel() and Mage::getSingletone() in Magento?

  • Mage::getModel(): It creates a new object.
  • Mage::getSingletone(): It first checks the existence of object and if object doesn?t exist, then it creates a new one.

Explain ORM in Magento?

ORM stands for Object Relational Mapping. It is a programming technique used to convert different types of data into objects and vice versa.

There are two types of ORM:

  • Converts different types of data into objects.
  • Converts objects to various types of data.

Explain different modules in Magento?

  • Core modules
  • Commercial modules
  • Community modules

How to change theme for login users?

To change theme for login users,

  1. if(Mage::getSingleton(‘customer/session’)->isLoggedIn()):
  2. Mage::getDesign()->setPackageName(‘package_name’)->setTheme(‘themename’);
  3. endif;

How can you add an external JavaScript/ CSS file to Magento?

  1. css/yourstyle.css

State the syntax to call a CMS page in your module's PHTML file.

  1. $this->getLayout()->createBlock(‘cms/block’)->setBlockId(‘blockidentifier’)->toHtml();

When you need to clear the cache to see the changes made in Magento?

When you have added or modified XML, CSS or JS files.

How to run custom query in Magento?

To run custom query,

  1. $db = Mage::getSingleton(‘core/resource’)->getConnection(‘core_write’);
  2. $result=$db->query(‘SELECT * FROM users where id=4‘);

How to enable product's custom attribute visibility in frontend?

In Manage Attributes section under custom attribute, select Yes for “Visible on Product View Page on Frontend” and “Used in Product Listing”.

State whether namespace is mandatory while creating a custom module in Magento?

No, namespace is not mandatory while creating custom module.

Is it possible to have more than one grid in Magento?

Yes it is possible.

List the magic methods in Magento?

Magic methods in Magento:

  • __get()
  • __set()
  • __isset()
  • __call()
  • __tostring()
  • __construct()
  • __has()
  • __uns()

How many types of sessions are there? Why we use different sessions in Magento?

There are namely three sessions in Magento:

  • customer session
  • checkout session
  • core session

All these sessions are stored in one session only. We use different sessions because sometimes we need to clear only a particular session data and not all session data.

How can you reset Magento files and Directory permissions?

To reset Magento files and directory to their default and secure permissions, use the following commands from the directory where Magento is installed.

  1. find . -type f -exec chmod 644 {} \;
  2. find . -type d -exec chmod 755 {} \;
  3. chmod +x mage

How to configure Magento to work with another domain?

To configure Magento to work with another domain, you have to change the Magento base URL option in the admin area.

Follow these steps:

  • Go to Magento admin area > System > Configuration and click Web on the left menu.
  • Select unsecure option
  • Edit the base URL field to change the URL that will be used for normal (HTTP) connections.

How will you get first and last item from the collection in Magento?

  1. $collection->getFirstItem() and $collection->getLastItem();

Explain the use of namespace in Magento?

Magento core modules are placed in mage namespace, core/Mage/Catalog and all custom modules are placed in local/CustomModule.

You can have more than one module with same name but they need to be placed in different namespaces.

Explain handles in Magento?

Handles control the structure of the page to be displayed. It decides which block will be placed where in the page. Handle is called for every page and every page request can have several unique handles.

Explain compilation feature in Magento?

Compilation feature allows us to compile all Magento files to create a single include path to increase performance.

How to enable Maintenance mode in Magento?

Create a file named as maintenance.flag and upload it to Magento home directory containing following code.

  1. $maintenanceFile = ‘maintenance.flag’;
  2. if (file_exists($maintenanceFile)) {
  3.     include_once dirname(__FILE__) . ‘/errors/503.php’;
  4.     exit;
  5. }

How to convert default currency to others in Magento?

To convert default currency to others, select the currency and import currency rates from System-> Manage currency-> Rates.


  1. $convertedPrice = Mage::helper(‘directory’)->currencyConvert($price, currentCurrency, newCurrency);

Explain Google checkout in Magento?

Magento allows the integration of online stores with Google checkout. Google checkout is the online payments service provided by the Google. It works like PayPal.

Explain how to change Magento core API setting?

You have to follow these steps to change Magento core API setting.

  • Go to Admin menu, choose System -> Configuration
  • Select Magento Core API on the left side of the Configuration Panel, under Services
  • Click on to expand the General Settings section
  • Type name of the Default Response Charset that you want to use
  • Determine the Client Session Timeout in seconds
  • Click the Save Config button when completed

Can all billing information be managed through Magento?

You can do the following things through client Magento account:

  • You can update your billing address.
  • You can add a credit card.
  • You can view your billing history.
  • You can add a PayPal account.
  • You can produce a print ready receipt.

What are the advantages of applying Connect Patches in Magento?

In Magento, applying Connect Patches provides following features:

  • Enable easy installation of packages with installation and overwrite any existing translations for the same time
  • Enhance security, by default Magento Connect uses HTTP to download extensions instead of FTP
  • Facilitate the extension developers to create new extensions with a dash character in the name
  • Magento administrators will be informed now who tries to install an extension with insufficient file system privileges.

How to fetch 5 bestsellers products programmatically in Magento?

  1. Mage::getResourceModel(‘reports/product_collection’)
  2. >addOrderedQty()
  3. >addAttributeToSelect(‘*’)
  4. >setPage(1, 5)
  5. >load();

What is codePool?

Code pool is a concept to pull the code in Magento structured format. It is specified when you register new module in app/etc/modules/Company_Module.xml

There are 3 codePools in Magento: core, community and local, which reside at app/code/ directory.


_community: It is generally used by 3rd party extensions.

_core: It is used by Magento core team.

_local: Local codePool should be used for in-hour module development and overriding of core and community modules for custom requirement.

Residing directory:



So in short, you can say that codePool helps Magento to locate module inside app/code/ for processing.

Mention what technology does Magento use?

Magento use PHP as a web server scripting language and MySQL for database.

Mention what are the basic features of Magento?

Basic features of Magento includes

  • Reporting and Analytics
  • Product and Catalog Browsing
  • Customer Accounts
  • Order Management
  • Payment
  • Site Management
  • Shipping
  • Search engine optimization
  • Marketing promotions and tools
  • Checkout
  • International Support

Explain how you can show a certain number of products for guests in Magento?

In the toolbar block you will see


there is a method:

Public function setCollection($collection);

Inside there is a piece of code:

$limit= (int)$this->get Limit();

If ($limit) {

$this ->_collection->setPageSize($limit);


You have to change variable $limit; you should override that block in the local pool, not change directly in the core.  In order to see whether the customer is a guest, you can use this code

Mage:: getSingleton(‘customer/session’) -> isLoggedIn()

Mention what all billing information can be managed through Magento?

I am text block. Click edit button to change this text. Lorem ipsum dolor sit amet,

From the client Magento account, you can do following things

  • Update your billing address
  • Add a credit card
  • View your billing history
  • Add a PayPal account
  • Produce a print ready receipt

Explain how you can change Magento Core API settings?

To change Magento Core API settings, you have to

  • Go to Admin menu, choose System -> Configuration
  • Select Magento Core API on the left side of the Configuration Panel, under Services
  • Tap on to expand the General Settings section and you can
  • Type the name of the Default Response Charset that you want to use
  • Determine the Client Session Timeout in seconds
  • Click the Save Config button when complete

Explain how Magento can be made more secure for the client?

Best practices for Magento includes

  • Using a strong password and changing them at regular interval
  • Disable remote access to Magento Connect Manager
  • Disable Downloader on production sites
  • Restrict access to safe IP addresses

Mention what is the benefit of applying Connect Patches in Magento?

In Magento, applying connect patch

  • It enables easy installation of packages with installation; it overwrites any existing translations for the same time
  • For enhancing security, by default Magento Connect uses HTTP to download extensions instead of FTP
  • With a dash character in the name, extension developers can now create extensions
  • Magento administrators will be informed now who tries to install an extension with insufficient file system privileges

Explain how you can move Magento to another Directory?

To move Magento to other Directory you have to follow the following steps.

  • Suppose you have Magento installed in the following location

  • On visiting your site, you want Magento to be the first thing to come up

  • Let assume you have a directory structure like this


  • Which means Magento would be installed here


  • Login to the backend of the Magento first and go to

System -> Configuration -> Web

Update the Secure and Unsecure URL for your store and then link to your site via SSH and then go to the directory, where you will be shifting Magento

cd public_html/

  • Now, transfer all the files from the store directory to the directory you are in

mv store/* store/.htaccess

  • Delete the cache data

rm –vf var/cache/

Now Magento is moved to another directory.

Explain how you can reset Magento file & Directory permissions?

You can reset Magento file & Directory to their default and secure permissions, by following commands from the directory where Magento is installed

find . –type f –exec chmod 644 {} \;

find . –type d –exec chmod 755 {} \;

chmod +x mage

Explain how you can configure Magento to work with another domain?

To do that, in the admin area, you have to change the Magento Base URL option. To do this, visit to your Magento admin area> System > Configuration and click Web on the left menu. Select the Unsecure option after that edit the base URL field to change the URL that will be used for normal (HTTP) connections.

Review Date
Reviewed Item
Excellent! Magento Interview Questions and Answers, Thank you Iteanz, Keep Updating More.
Author Rating