Update: August 18th, 2022 - Stripe Connect Integration
MarketKing 1.2.0 introduced an automatic integration with Stripe. Through this integration, vendors get paid automatically, and refunds are also handled automatically.
When a refund is approved by the vendor for a Stripe order, it is automatically sent to Stripe. The admin is not involved in any way and does not need to approve, review, or process the refund.
To read more about the Stripe integration, click below:

Refund Requests
MarketKing has a comprehensive built-in refund requests module with several features:
- It allows customers to request full or partial refunds on their orders from their My Account panels.
- It directs refund requests to the vendors, who can then approve or deny them.
- Approved refunds are sent to the admin backend, where the admin or shop manager can process the refunds and return payments.
- A built-in conversations tool allows customers and vendors to send messages and work out conflicts.
Customers' Ability to Request Refunds
Customers can request refunds from their My Account panel by going to Orders and clicking on an order. There they will find a "Request Refund" button.

Once clicked, this button opens a form with additional details. Here the customer can enter a reason for their request and choose whether they want a full or partial refund.

Refunds Panel in My Account
After a refund request has been made in the order panel, the customer can view it in the dedicated "Refunds" panel. Here the customer can see all refund requests they've made, along with their status.

After clicking on a refund request, customers can view additional details as well as the open conversation. Users can then add messages or respond to messages from the vendor. This allows the customer and vendor to have a conversation and discuss the issues with the order.

Refund Notifications
When a refund request is sent, the vendor is notified by email through the "New Refund Request" email template. The email includes a link to the refund request, the stated reason, and the user who submitted it.

Vendors can choose whether they want to receive these emails in their vendor dashboard under Settings โ Email Settings.

Refund Options in the Vendor Dashboard
In the vendor dashboard, vendors can find a dedicated "Refunds" panel where they can view and manage all refund requests.

By clicking on "View", an additional panel opens where vendors can see the entire refund conversation, send messages, and approve or reject the refund request.

If the vendor approves or denies the refund, the request's status will change and the vendor and customer can no longer send new messages. The refund request is considered "finalized".
Refunds in the Admin Backend
Once a vendor has approved a refund, it is sent to the admin backend, where the admin or shop manager needs to process the refund and mark it as completed.

Here they need to click on the order and process the refund in the order panel. They also need to return the order value, either automatically or manually, depending on the payment gateway used.
Once the refund has been processed, the admin can click on "Mark as Completed". The "Mark as" buttons only serve to help the admin keep track of which refunds still need action; they do not do anything else.
In the Status column, the admin can see that the refund has already been approved by the vendor. If the vendor of the order is the admin/shop itself, this column will only show "pending", and the admin can review the refund request in this panel.
Vendor Commission Handling
Vendor commission is handled automatically by the plugin. Whether you issue a full refund or a partial refund, the plugin will adjust the vendor commission accordingly. In the case of a full refund, the entire vendor commission is removed from the vendor's balance.
In the case of a partial refund, the calculation is proportional to the order value and commission value. For example, if the order value is $100 and the vendor commission is $25, and then a $50 refund is issued, the vendor commission will be proportionally reduced (by 50%) to $12.50. This will be visible in the vendor balance history log.
Vendor Commission for Cash on Delivery (COD) Orders
For COD orders, MarketKing has 3 available settings for handling commission. More info in the Commissions article.
- None
With this setting, COD orders are treated like all other orders. Usually this means the admin is handling deliveries and collecting the cash. Therefore, commission is handled the same way during refunds (when a refund is granted, the plugin automatically reduces the vendor balance, i.e. the amount the admin owes the vendor).
- Ignored
With this setting, COD orders are ignored in terms of commission. Refunds also have no effect on vendor commission.
- Reversed
With this setting, it is assumed that the vendor receives the cash from the customer, and therefore the vendor has to pay the admin their share. For commissions, this means that the vendor balance is reduced when such an order is marked as completed (the admin takes their share directly from the vendor balance).
When granting a refund for such an order, the behavior is similarly reversed: when a refund is granted, the plugin will automatically increase the vendor balance. This is because the admin commission that was previously taken from the vendor balance has to decrease, and this is done by increasing the vendor balance.
All of this only applies to completed orders for which commissions have already been granted.
Note:
For refunds on COD orders where the vendor has received the money from the customer, the vendor approves the refund and processes it as well. The refund is still sent to the admin backend, and the admin has to mark it as refunded or grant a partial refund.
This is because this reduces the admin commission, so the admin has to approve it as well. By marking it as refunded, the admin accepts that the vendor has indeed refunded the money and agrees that their admin commission also needs to be reduced.

