User Manual - RMA
- Installing M2 RMA
- Introducing M2 RMA
- 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.
Compatibility: Magento Open Source 2.4.X, Magento Commerce 2.4.X
Installing M2 RMA
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:
run the following command:
php -f bin/magento module:enable Aheadworks_Rma
php -f bin/magento setup:upgrade
php -f bin/magento setup:static-content:deploy
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.
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:
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:
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:
Recompile your Magento store if you are in the Production mode:
To verify that the extension is enabled, run this command:
Clean store cache, by running the following command:
Log out and Log in the backend again.
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:
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.
- Web API
- Coupon Code Generator
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.
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.
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:
- 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.
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 you can exchange messages with the customer and attach files if necessary.
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.
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 confirm that the package has been sent back to your store.
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.
There are 7 predefined RMA request statuses, each defining a particular stage of the RMA process.
|Assigned to the new return request automatically|
|Assigned upon the request's approval|
|Assigned by the customer confirming package sending|
|Assigned upon package receipt confirmation|
|Assigned upon issuing a refund|
|Assigned upon closing a request either by you or customer|
|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.
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.
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.
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).
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.
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.
Order Page Improvements
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 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.
This setting section defines your RMA department credentials such as the name displayed, email, and address.
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).
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.