Skip to content

How to Handle Refunds and Reversals

Refunds are the part of an affiliate program nobody sets up in advance and everybody meets in month two. The plugin handles most of it, but one case needs you.

Everything below happens without any setting to turn on, in both the free and Pro versions.

What you do in WooCommerce What happens to the commission
Refund the whole order Every row on the order flips to Refunded
Refund one line item That row’s amount is reduced and the refund is recorded
Cancel the order Every row flips to Cancelled
Mark the order Failed Every row flips to Cancelled
Move the order back to Processing Rows return to Pending

Refund in WooCommerce exactly as you normally would. There is no affiliate step, and no separate screen to visit.

The plugin listens for the refund and updates the commissions itself.

Go to DevDiggers Plugins → Affiliates → Commissions and find the order.

The Commissions list with one row per order line item

Use the status links above the table to jump straight to Refunded.

The commission status filter links above the Commissions table

The two cases behave differently, and the difference is worth knowing before you refund anything.

  • A full refund sets the WooCommerce order status to Refunded. Every commission on that order moves to Refunded and stops counting as money owed.
  • A partial refund leaves the order status alone. The plugin instead recalculates the refunded line, subtracts the commission on the refunded amount, and stores that figure in the row’s refund column.

So a partial refund does not cancel a commission. It shrinks it, and the row stays payable at the smaller amount.

This is the case the plugin will not solve for you.

A commission sitting at Pending payment or Paid is skipped by the status change. It keeps its status and its amount, whatever happens to the order afterwards.

That is deliberate. Once a commission is inside a payout you have committed to, silently rewriting it would leave your payout records disagreeing with your own records.

There is no reversal button, so handle it the way you would any other overpayment.

  1. Note the amount from the Refunded row.
  2. Tell the affiliate, before they see a smaller payout than they expected.
  3. Deduct it when you create their next payout, and put the reason in the transaction reference.

The payout transaction reference field

The reference field is the only free-text field on a payout, so it is the only place this can be recorded.

The cheapest fix is not to pay too early. Two Pro settings exist for exactly this.

Commission Holding Period keeps a commission out of payouts until it is a set number of days old, which covers your normal return window.

The Commission Holding Period field on the Payouts settings tab

Minimum Withdrawal stops tiny payouts going out constantly, which reduces how often a refund lands after payment.

The Minimum Withdrawal field on the Payouts settings tab

One refund tells you nothing. A rising Refunded Commissions line under flat earnings tells you a partner is driving orders that do not stick.

The Reports screen with a date range selector above charts for earnings and commissions

Filter Show to one affiliate at a time to find the source. Traffic that converts and then returns costs more than traffic that never converts.