Child pages
  • RMA - Magento 2

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.



What should one know before migrating Aheadworks RMA for M1 to RMA for M2?


Read carefully and consider this information as the top priority, or the migration may result in accidental data losses.

  1. The Magento Data Migration Tool is required to be installed prior to starting the migration.
    The migration script relies heavily on the Magento Data Migration tool. Understanding how it works will be useful during the migration process.
  2. Backup Magento 2 databases before performing the migration to have an opportunity to revert any changes.
    RMA migration may involve rewriting database tables, backup is advised.
  3. All the files attached to RMA request should be migrated manually
    More information on manual migration can be found in the Magento instructions on manual migration.

Video guide

A similar migration process is highlighted in the educational Video Guide on the Aheadworks Youtube channel. Don't forget to enable subtitles to the video to follow the data migration process.

Migration process

Below, you can see the migration guide with more detailed step-by-step description.


 1. Log into your Magento server as file owner and navigate to the directory where you have your Magento 2 store installed

titleClick to view details

For example:

No Format
cd /var/www/my_magento2_store/

2. Install the Magento Data Migration Tool

titleClick to view details

The installation instructions for the Magento Data Migration Tool along with the basic information can be found here:

Magento provides two ways of installing the Magento Data Migration Tool:

Next, you may want to navigate to vendor/magento/ to make sure the Migration Tool has been installed successfully.


 3. Download RMA migration distributive and unpack it to the desired location

titleClick to view details

The RMA migration distributive can be downloaded by the following link:

Unpack the contents of the distributive to find the /etc and /scr folders inside.


 4. Copy the contents of the RMA migration distributive to the Magento Data Migration Tool main folder

titleClick to view details
Copy the /etc and /scr folders included in the RMA migration package to: vendor/magento/data-migration-tool/

Rewrite on prompt.


 5. Edit the config.xml file of the Magento Data Migration Tool

titleClick to view details
Navigate to vendor/magento/data-migration-tool/etc/aw_rma/ and open config.xml for edit.
More information on tag values and which one should be put inside can be found in the Magento Data Migration Tool configuration instructions.



Pay close attention to the <aw_rma_remove_requests_before_migration> tag value you enter if you already have some RMA requests on your Magento 2 store and want to keep them untouched.
The "1" value set by default will remove all existing Magento 2 RMA requests, the "0" value will add new RMA requests to the already existing ones.


 6. Run the migration script in the console

titleClick to view details

Run the following command considering the path to config.xml to start the migration process:

No Format
bin/magento migrate:data [-r|--reset] {<path to config.xml>}

According to the demo video, you can also use the following command considering the path to config.xml:

No Format
bin/magento migrate:data -r vendor/magento/data-migration-tool/etc/aw_rma/config.xml

 7. Data migration is complete. Make sure to migrate the attached files and images manually.

  • Copy all the files in the folder m1store_root/media/aw_rma

  • And moved them to the m2store_root/pub/media/aw_rma/media folder.

Migration Process Explanation

The migration process consists of two stages.


Stage 1. Synchronization

First of all, the synchronization process of ‘Fields’ (RMA request options) of the RMA extension for Magento 1 (hereinafter M1 RMA) and ‘Custom Fields’ of the RMA extension for Magento 2 (hereinafter M2 RMA) happens.

Here is how the fields conformance looks like:

  • Request type -> Resolution;

  • Package Opened -> Package Condition;

  • Reason -> Reason.

Conformance logics

M1 RMA ‘Fields’ values are compared by their names with the corresponding M2 RMA ‘Custom Fields’ values. In case of exact matches, the value is transferred directly to Magento 2. If the names do not match, the tool adds a new option to M2 RMA.


For example, if one of the names of the M1 RMA "Request type" values does not match any name of M2 RMA "Resolution" custom fields, we add a new option to M2 RMA ‘Resolution’ custom field.

The same procedure is applied to all field values of M1 RMA. To avoid additional negative effects we recommend you to migrate to a ‘clean’, not customized RMA extension for Magento 2 in order to reduce the number of mismatches.

Stage 2. Migration

Requests data is transferred as it is with the preservation of the order_id, customer_id, product_id, and store_id fields. Therefore, it is important that all orders, products, customers, and stores match each other.


For example, if the M1 product with ID 5 has product_name1, and the same product with ID 5 in M2 has other product_name2, then after the migration, you will see data discrepancy (same applies to customers and stores).


Note: Ideally, you should migrate all your data to Magento 2 first, and only then migrate the RMA requests.

When you transfer request statuses, the following conformance pattern is used:

  • M1 Pending Approval -> M2 Pending Approval

  • M1 Approved -> M2 Approved

  • M1 Package sent -> M2 Package sent

  • M1 Resolved (canceled) -> M2 Canceled

  • M1 Resolved (refunded) -> M2 Issue Refund

  • M1 any other status -> M2 Closed


Note: The migration configuration file data-migration-tool/etc/aw_rma/config.xml contains the aw_rma_remove_requests_before_migration option, which is enabled by default. This option clears all the Magento 2 RMA requests created before the migration procedure, so if necessary, you can disable it and make the new migration data added to the existing Magento 2 RMA requests.



RMA extension comes ready for work right after installation.

Once installed RMA extension introduces My Returns section to the customer account page and Create New Return link to the store footer. Both links lead to creating new RMA request.

Along with My Returns section and Create New Return link customers can request an RMA from order details page of My Orders account section.


If you allow guest customer checkouts, with the help of RMA extension you can also allow your guest customers to ask for a return.

Guest customers can ask for an RMA by clicking Create New Return link in the store footer.

To ask guest customers for an RMA request we need to specify the email address used to place the order in your store and specify the order number.


titleClick here to see how guest RMA form looks like...


Let's request an RMA from the My Returns section. To do this click button.

On the Select order to create RMA screen specify the order you want to request an RMA for.

Next, select order item(s) and specify the item quantity (if several). At this very step specify an RMA Resolution - Refund or Replacement - and select Package Condition. These are the Custom Fields that come with RMA extension by default.


Later you can add other Custom Fields or edit existing ones at the corresponding section of your store backend

Once done, click 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 the store administrator.


Both customer and store administrator messages are combined in a chat that can later be seen under an RMA request.

titleClick here to see how chat looks like...

Once done, click button.

RMA request has been submitted.

All the RMA request information allong with the messages thread can later be found under My Returns section.



Statuses and Email Templates

As it has been mentioned previously RMA extension comes set up and ready for work right after the installation. However, if it is required you can always adjust RMA request statuses and edit the notification emails sent to both customer and store administrator to correspond your requirements.


There are seven RMA request statuses, each defining particular stage of the RMA process.

Pending ApprovalAssigned to the new return request automatically
ApprovedAssigned upon store administrator approving an RMA request
Package SentAssigned by the customer confirming package sending
Package ReceivedAssigned by the store administrator confirming package has been received
Issue RefundAssigned upon store administrator issuing a refund
ClosedAssigned upon closing a request either by customer or store administrator
CanceledAssigned upon store administrator canceling the request

Email Templates

Depending on the request type it is also possible to send an email notification to customer, store administrator or both.

Along with defining email templates for email notifications, it is also possible to edit the request thread message to be displayed upon RMA obtaining particular status.

Custom Fields

In the Getting Around section when submitting an RMA request you have been suggested to fill in RMA Resolution, Package Condition and Reason for asking RMA.

These are all pre-defined Custom Fileds that come with the RMA extension by default and can be edited here at Custom Fields section.

Along with editing the Custom Fields that come with the extension by default you can also create additional Custom Fields depending on the products or services you are offering.

To create a Custom Field click button:

  • Define 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 (as Resolution in the example) or to the order item (as Reason in the example);
  • Set the RMA status at which the store administrator and customer can edit/view the Custom Field;
  • Make the Custom Field required if necessary (customers will not be able to submit a request without filling the Custom Field);
  • Add the Custom Field to the Shipping Label (this may help to identify the parcel);
  • Chose a website the Custom Field should be displayed at.
  • Adjust Custom Field frontend label (name of the Custom Field customers will see).
  • Add options if you want a customer to select from the pre-defined set of attributes.

Once done with the Custom Attribute click button.

The Custom Field has been created and can now be found at the set area of the RMA request page.

Canned Responses

The Canned Responses section allows creating fast responses to be used for status updates and other simple messages sent to customers. On the Canned Responses page, you can manage existing responses either individually or massively and create new canned responses.

The Select drop-down of the Action column allows you to edit or delete individual responses, while the Actions drop-down leftwards makes it possible to change status or delete several selected responses at once.

Creating a New Canned Response

In order to add a canned response tap the 'Add Canned Response' button and enter the 'New canned response' page. The page allows you to enable the response, provide its title, Magento store view, and response content.


Note: Only enabled responses can be used for your answers.