User Manual - RMA
- Installing M2 RMA
- Uninstalling M2 RMA
- Introducing M2 RMA
- Compatibility
- Getting Around
- Backend Configuration
- Order Page Improvements
- Extension Settings
Magento 2 RMA completely arranges the return merchandise process in web stores. Customers can create return requests and monitor them from their accounts. Store admins can arrange requests from the backend by adding custom fields to an RMA request form, communicating with customers in the dedicated chat area, and sending email alerts and custom canned responses while requests are processed.
API documentation link
Installing M2 RMA
NOTE: Please be very careful when uninstalling this module. This module uses a declarative DB scheme. Once the module is uninstalled the DB tables will be lost. |
Step 1 (Magento 2 Community and Enterprise)
Command Line Installation
- Backup your web directory and store database
- Download the RMA installation package
- Upload contents of the RMA installation package to your store root directory
- In SSH console of your server navigate to your store root folder:
cd path_to_the_store_root_folder |
run the following command:
php bin/magento module:enable Aheadworks_Rma |
then:
php bin/magento setup:upgrade |
after:
php bin/magento setup:static-content:deploy -f |
5. Flush store cache; log out from the backend and log in again
Make sure the installation is done from the FTP administrator account. Otherwise, set 775 permissions to the store root directory after the extension is deployed. |
Composer Installation
If you are installing an extension from Aheadworks for the first time, you need to add our composer repository to your Magento store:
1. Login to your ssh console and navigate to your store folder:
cd path_to_the_store_root_folder |
Run the following command:
composer config repositories.aheadworks composer https://dist.aheadworks.com/ |
After the command was executed successfully, you can use the composer to install the products.
To install the extension:
2. Login to your ssh console and navigate to your store folder:
cd path_to_the_store_root_folder |
3. Run the following command to install the latest version of the extension:
composer require aheadworks/module-rma |
if you need to install a specific version, run this command:
composer require aheadworks/module-rma:<version> |
Specify the version of the extension in <version> |
When prompted, enter Public Key (Username) and Private Key (Password):
Both Public Key (Username) and Private Key (Password) can be found in My Projects and Licenses in your personal account on our site:
4. Enable the extension:
php -f bin/magento module:enable <Module_Name> |
Add the product name in <Module_Name> |
Next, register the extension:
bin/magento setup:upgrade |
Recompile your Magento store if you are in the Production mode:
bin/magento setup:di:compile |
To verify that the extension is enabled, run this command:
bin/magento module:status |
Clean store cache, by running the following command:
bin/magento cache:clean |
Log out and Log in the backend again.
Want to use the Hyvä theme module? To install the Hyvä theme module, you need to install the module via composer using command: composer require hyva-themes/magento2-aheadworks-rma |
To upgrade the extension:
5. To update or upgrade an extension:
Download the updated extension file. Take note of the module-name and version. Export the contents to your Magento root.
If a composer package exists for the extension, run one of the following.
Update per module name:
composer update aheadworks/module-rma |
Updater per version:
composer require aheadworks/module-rma:<version> |
Run the following commands to upgrade, deploy, and clean the cache.
php bin/magento setup:upgrade --keep-generated |
Step 2 - Disable native RMA
For seamless experience with the present RMA module and Magento 2.3 Enterprise Edition / Cloud Edition, make sure the native Magento 2 RMA is disabled. Refer to the following steps to do so:
- Navigate to Stores > Configuration > Sales> Sales;
- Set Enable RMA on Storefront and Enable RMA on Product Level to 'No'.
Get Data Migration Tool by clicking on the following links: https://media.aheadworks.com/migration-tools/RMA/rma-data-migration-tool-2.1.x.zip https://media.aheadworks.com/migration-tools/RMA/rma-data-migration-tool-2.2.x.zip |
Uninstalling M2 RMA
Since Magento introduced declarative Database you need to be very carefull when uninstalling or disabling the module.
NOTE: Please be very careful when uninstalling/disabling this module. This module uses a declarative DB scheme. Once the module is uninstalled the DB tables will be lost. |
Manual Removal
-
Run command:
|
It will remove data patch wilth module sample data so you can install it again in future.
2. Disable extension:
|
3. Run setup upgrade:
|
It will remove module related tables from the system
4. Remove module files manually:
|
Compatibility
Module Version |
Magento Version |
PHP |
1.6.0 and earlier versions |
2.3.Х - 2.3.6 2.4.0 - 2.4.3 |
7.4 and earlier versions |
As of version 1.6.1 |
2.3.7-p3+ 2.4.0 - 2.4.4 |
7.4, 8.1 |
As of version 1.6.2 |
2.3.7-p3+ 2.4.0 - 2.4.5 |
7.4, 8.1 |
As of version 1.7.0 |
2.4.3 - 2.4.5 |
7.4, 8.1 |
As of version 1.7.1 |
2.4.4 - 2.4.6 |
8.1 |
Introducing M2 RMA
The Magento 2 RMA extension handles all the key aspects of return merchandise management:
- RMA request creation & monitoring in both the frontend and backend;
- Custom RMA fields for the RMA request form;
- Per-item control (for multi-product returns);
- Message thread with file attachments and admin notes;
- Email alerts configured individually per RMA status;
- Configurable canned responses.
Integrations
Extension Logic
In the backend, the module generally consists of 4 grids and the configuration page. Store admins can create/monitor return requests, configure email alerts along with canned responses, exchange messages with customers in the dedicated thread (and optionally leave internal notes not visible to requesters and attach files to the thread), and add custom fields to the request form. On the storefront, customers can monitor their requests from a separate section, create new requests as well as use the same message thread functionality as in the admin area.
Getting Around
The Magento 2 RMA extension comes ready for work right after installation. Once installed, it introduces the 'My Returns' section to a customer account page and the 'Create New Return' link to the store footer. By following both of the links, you can create a new RMA request.
Now, let's request the return from the 'My Returns' section. To do this, click on the Create New Return button.
Along with the 'My Returns' section and the 'Create New Return' link, customers can request a return from the order view page in the 'My Orders' account section. To do this, they should click on the 'Request Return' active link on the order details page.
Thanks to the RMA extension, you can allow your guest customers to ask for a return. To create a return request, a guest customer should click on the 'Create New Return' active link in the store main page's footer. Here the module adds the 'Guest Order' section where the guest should specify their email address used to place the order and the order number. |
Next, select the item(s) you want to return and specify the item quantity (if you need to return several items). Choose the Resolution for the return and Package Condition. Those are the custom fields that come with the RMA extension by default.
You can add other custom fields or edit the existing ones in the corresponding backend section. |
Once done, click on the Next button to proceed to the next step.
When the items are selected and custom fields are filled in, you can add a message to your request. The message will be emailed to an admin.
Both customer and admin messages are combined in a thread that can be found under the corresponding RMA request. Once done, click on the Submit Request button. The request is submitted. All the request-related information along with the message thread can be found in the 'My Returns' section. |
Currently, products from canceled RMA requests are not available for a new RMA request. |
Backend Configuration
Manage RMA
Manage RMA is the main section of the extension.
Here you can manage all the RMA requests submitted by you and your customers. With the 'Actions' box above the grid, you can change the request status individually or massively to:
- Approved;
- Canceled;
- Closed;
- Issue refund;
- Package received;
- Package sent;
- Pending approval.
Here, you can also export selected request or the whole list in CSV/Excel.
Currently, products from canceled RMA requests are not available for a new RMA request. |
Creating RMA Requests from the Backend
To create a new return request, click on the New Request button above the grid.
The 'New Request' page consists of several sections:
- General Information. With these options, you can select the order the request relates to. Next, you should select the Resolution you want to apply and Package condition reported by a customer if you use the above custom fields for your request forms.
Order Date - the column with order date. Admin can select/deselect the order date to show in the columns and filter by order date.
Note: You can create RMA requests for completed orders only. |
- Products. Products included in the order. From the 'Products' grid, you can amend the number of returned items and the reason to send them back individually for each item. You can also remove certain products from the grid if you don't want them to be included in the request.
- Customer Information. The information about the customer is automatically taken from the order.
- RMA History. Here admin can exchange messages with the customer and attach files if necessary.
Integration with Coupon Code Generator Coupon Code Generator extension, when installed along with RMA by Aheadworks, allows admin to create a coupon right from an RMA request. Select the rule from the drop down list and click on the 'Generate Coupon' button. |
Messaging is possible in several ways.
- You can write an individual notification for the customer by specifying the message in the text area and clicking Reply above the area;
- You can leave an internal note for other admins. For this purpose, click Internal Note. The whole text area below will turn yellow to make you sure that the message is for internal use only;
- Finally, you can select a canned response to be sent to the customer in response to their particular actions.
Canned responses are customizable values. Configure them from the 'Canned Responses' page. |
In addition to messages, you can also attach files to the newly created request.
In Magento 2.3.0 installed on PHP 7.2, the files can't be uploaded to the RMA request form in the admin area. The problem relates to the bug in the 2.3.0 version. To fix it, apply the following patch: https://github.com/magento/magento2/pull/19249 |
As soon as the new RMA request is created, you can manage it the same way as the requests created by customers.
Print Request History
Merchants can print RMA labels with RMA History included, so they could document what steps need to be taken to resolve the RMA issue.
To print RMA History go to Stores > Configuration > Aheadworks Extension > RMA > General and set Print Request History to ‘Yes’.
Print Request History - when the Print Request History setting is enabled, the history of messages in the request will be printed. If images are attached to messages, they will also be printed, all other file types will be ignored.
Creating RMA Requests without attaching it to an order from the Backend
As of 1.7.0 version, merchants are able to create requests from the backend without attaching it to an order, so they can handle requests purchased on a reseller website.
Steps:
1. To create a new return request, click on the ‘New Request’ button above the grid;
2. Click on the ‘Select Products’ button;
3. Choose products from the list using checkboxes and click on the ‘Add Selected Products’ button;
4. Enter Products and Customer data: Product Price Per Item, Qty Of Items To Return, Reason, Customer Name and Customer Email.
Managing RMA Requests
Click the Request's id (all id's are presented as active links in the 'Request #' column) to proceed to the 'Manage Request' page. The page looks almost the same way as the 'New Request' page. The only difference is that the 'Status' and 'Last Update date' parameters are presented there.
On this page, you can close, cancel, and approve the requests pending approval.
With version 1.4.0, we've added the ability to arrange a non-linear workflow. Now you can change request statuses according to your business needs and increase the effectiveness of your specific RMA model. |
Approving a Request
Approve the request by clicking Approve.
Now the email notifying the customer about the new reply and request status update will be sent.
Customers will now have the option to print shipping labels (to be included in the RMA package) and notify the admin (via chat message) that the package has been sent back to your store.
Uploading label
Once the request is approved, the admin gets the "Upload Shipping Label' button available. Then the customer gets an additional 'Download Shipping Label' button on the frontend. The button is only available to the customer on 2 conditions:
- request is approved
- there is a file uploaded by admin
If any of the conditions is not met, the customer doesn’t see the download button.
Printing Label
Label printing is now available from the backend so that you can use the label for working with warehouses.
Confirming Package Receiving
After the request has been approved, and the customer has confirmed that the package had been sent back to your store, you will need to confirm the receipt. Do this by clicking Confirm Package Receiving.
Creating a Replacement Order
As soon as the 'Package Received' status is applied, you can create a replacement order for the requests requiring a replacement.
Issuing a Refund
For the requests requiring a refund, you can create a credit memo right from the 'Manage Request' page.
Closing a Request
Finally, you can close the request as soon as the item is replaced or refunded.
That's it. The RMA request is successfully resolved. Let's proceed to the RMA extension's settings.
The Magento 2 RMA extension doesn't offer any refunding or postal services. Refunds are processed manually by any means necessary. |
Tracking returns at customer page in the backend
The extension adds a corresponding tab to a customer page in the backend where you can refer to when it's needed to follow the RMA requests of a particular user.
Statuses and Email Templates
As it was previously mentioned, the RMA extension comes set up and ready for work right after the installation. If required, you can always adjust RMA request statuses and edit the notification emails.
Statuses
There are 7 predefined RMA request statuses, each defining a particular stage of the RMA process.
Status |
Event |
Pending Approval |
Assigned to the new return request automatically |
Approved |
Assigned upon the request's approval |
Package Sent |
Assigned by the customer confirming package sending |
Package Received |
Assigned upon package receipt confirmation |
Issue Refund |
Assigned upon issuing a refund |
Closed |
Assigned upon closing a request either by you or customer |
Canceled |
Assigned upon the request's cancellation |
If you need you can create a new unique status by clicking 'Add New Rule' at the Statuses an Email Templates page.
After the Magento 2 RMA 1.4.0 release, you are able to assign priority to statuses in your store. You can sort statuses according to their priority and see the sequence of your RMA stages.
Templates
Depending on the request's type, it is also possible to send an email notification to the customer, store administrator, or both.
Along with defining templates for email notifications, you can edit the request thread's message to be displayed upon the request obtaining a particular status.
Custom Fields
As we already described in the Getting Around section, when submitting the request, you are suggested to fill in the 'Resolution', 'Package Condition', and 'Reason' sections to ask for the return.
All those are the predefined custom fields that come with the RMA extension by default. They can be edited in the 'Custom Fields' section.
To make sure that the customer sends an image of the product, there is a Custom Field that must be added per request. The Сustom Field allows clients to upload images on the frontend (multiple images) and admins to see and upload them in the backend. This option is only available per request (never per item).
Along with editing custom fields, you can also create additional ones depending on the products or services you are offering.
To create a new custom field, click Add Custom Field:
- Define the name (for internal identification purposes) of the custom field and the field type: text field, text area, dropdown, multi-select;
- Decide if the custom field should refer to the RMA request on the whole or to the item(s) previously ordered;
- Set the return status upon which you and your customers can edit/view the field;
- If necessary, make the field required (customers will not be able to submit the request without filling this field);
- Add the custom field to the shipping label (this might help to identify the parcel);
- Choose the website the custom field should be displayed at.
- Adjust the field's frontend label (the title that will be displayed to customers).
- Add options (attribute values available for the 'Dropdown' and 'Multiselect' field types) if you want the customer to select from the predefined set of attributes.
Actions Tied to Custom Fields
If the type of the field is 'Dropdown' or 'Multiselect', each option of the field can be configured as follows:
- Is Default - the radio-box to identify the option to be shown in the field by default;
- Enabled - the check-box to define is the option is enabled within the field;
- Admin - the title of the option as it will appear on the Backend;
- Action - one of the two actions can be assigned to an option of the field: Create a Replacement Order or Create a Credit Memo;
- Statuses - the drop-box with order statuses;
- Default Store View - the name of the option on the store-front (view-dependent).
Custom Field Specification Dependencies
Whenever admin is setting up an option and it’s values it will be able to manage dependencies. So no other option fields will be shown to the customer until the admin specified they should be visible whenever this value is selected.
You can also decide when a custom field is mandatory to fill in. Whenever the field becomes mandatory - it is mandatory to fill that in both from the frontend and from the backend.
Configuring custom fields in the above way means that when the order is in one of the specified for the option statuses the Manage Request [Order Number] page on the Backend will feature either (or both) the Create a Replacement Order or Create a Credit Memo button. These can be used by the Admin to either create a replacement order in response to the request or initiate a refund.
Canned Responses
From the 'Canned Responses' grid, you can create fast responses that can be used for status updates and other simple messages sent to customers. You can manage the existing responses either individually or massively and create new canned responses.
With the 'Select' box in the 'Action' column, you can edit or delete the selected responses, while the 'Actions' box above the grid makes it possible to change the status or delete the selected response(s).
Creating a New Canned Response
To add a new canned response, click Add Canned Response above the grid. On the following page, you can enable the response, provide its title, select the appropriate store view and specify its content.
Note: Only enabled canned responses can be used for answers. |
Reporting
Note: Please, make sure you also install and enable module-rma-reports, which will provide the integration between RMA and Advanced Reports modules. |
Sales > RMA by Aheadworks > RMA Reports
Top 10 return items are shown at the top of the chart. Report is split into 2 tables. From a higher level report to a very detailed report per product. You can select the custom date range of the report.
By pressing the hyperlink of the product it shows a detailed product report.
Order Statuses - allows to identify which orders will be considered to set up a report.
RMA Custom Fields - allows to select the field on the basis of which the report will be generated. You can select multiple fields, the first field will be displayed in the first column, the second field in the second column.
Please note: Every return request has the date of creation and date of last modification. The report only includes requests on the date of completion. Subsequently if a request is canceled it does not appear in reports.
Order Page Improvements
Returns Section
If you want to see all return requests created for a particular order, you can do this right from the order view page. The 'Returns' section enumerates all the created requests in the dedicated grid. In order to manage a certain request, you need to click the active link with the ID of the request in the 'Request #' column.
With New Return above the grid, you can create return requests on the spot.
In order to see all the products in the list and indicate the reason for each product individually, the customer can add lines to the table. For each line customer is able to select an item for return, its quantity and the reason for return.
Extension Settings
General
In the 'General' setting section, you can adjust the basic extension parameters:
- Return Period - defines how many days after placing the order the customer can ask for the return;
- Allow guests to request RMA - defines if guest customers can ask for the refund (email and order ID are required);
- "Confirm Shipping" alert text - edits the 'Confirm Shipping' pop-up notification;
- Approve New Requests Automatically - defines if the incoming return requests should be approved automatically.
RMA Text Blocks and Policy
This setting section displays CMS blocks at the specific RMA request steps.
Every field represents the corresponding step with the box of all CMS blocks available in the store.
This is not actually a block position, rather, this is a link available for the customer when accepting the Return Policy regulations.
Contacts
This setting section defines your RMA department credentials such as the name displayed, email, and address.
Email Notifications
This setting section defines email notification templates about the new reply by the store administrator to the customer's request (Reply by Admin) and the new reply by the customer to the request (Reply by Customer).
File Attachments
This setting section makes it possible for customers to attach files to their return requests. Here you can also specify the maximum size of the uploaded files in megabytes and available file extensions.
Already used our product?
We would appreciate your feedback. Please, leave a review.