Handling Refundable and Non-Refundable Fees in Magento

How to handle refundable and non-refundable fees?

With the help of Extra Fee, you can create additional charges that can be both refundable or not, depending on your requirements. Let's take a look at that in detail.


Setting up a fee

To start with creating a fee, please go to Magento Admin Panel → Stores → Configuration → Amasty Extensions → Extra Fee → Fees and select Add New Fee. To determine a fee type, navigate to the General tab and locate the Eligible for Refund setting.


Refundable Fee

This fee type should have Eligible for Refund → Yes:




Non-refundable Fee

Here the setting should have the opposite value, Eligible for Refund → No:



The remaining settings, including fee options and application conditions, can be configured depending on your preferences.

Issuing a refund

As for creating refunds, the behavior of fees will depend on the setting you've chosen. To issue a refund, please open an invoiced order and select the Credit Memo option.




Orders with non-refundable fees

Even though a non-refundable fee is visible under order details:




It'll be hidden during credit memo creation:


    

If you issue a full refund for this order, the fee amount will remain under order totals, so there'll be a difference between grand total and refunded amount:



Orders with refundable fees

In this case, the fee line will be visible when issuing a credit memo, and you'll be able to determine the amount you'd like to refund:




If you wish to change the refunded amount, please edit the number inside the corresponding fee field and click the Update Totals button:



When you complete this refund, the order totals will be updated according to the amount you specified in the field: