Skip to content
Managing requests

Resolving requests

Resolving a request settles it with the customer through one Resolve request button. WPReturns can refund through WooCommerce, issue store credit or create a linked exchange order. Warranty claims get a repair or a free replacement, and keep-it rules refund without a return.

Available in: Free and Pro. The free plugin resolves with refunds only. Store credit, exchanges, repair, replacement and keep-it refunds need Pro.

The Resolve request button sits on the request screen. The options customers may pick are set on the Resolutions tab. See Resolution settings.

Resolve card with Resolution Amount and Refund goes to

ResolutionLabel customers seeWhat WPReturns createsAvailable in
RefundRefund to original paymentA WooCommerce refund on the orderFree and Pro
Store creditStore creditA coupon or a DevDiggers Wallet top-upPro
ExchangeExchangeA new linked order for the replacement itemsPro
RepairRepairA log entry: “Marked as repaired.”Pro
ReplacementReplacementA linked order at no chargePro
Keep itKeep the item (refund without return)A refund with no parcel to wait forPro

After a resolution runs, the request moves to Completed and the customer gets the Return resolved email. The email says what was paid back and shows the final status, Completed. The result also lands in the history and on the customer’s request page.

Return resolved email with the refund amount and status Completed

The Amount field starts at the item value minus fees, plus any credit bonus. You can lower or raise it before you resolve.

PartSource
Item valueThe price paid per unit times the quantity returned
Restocking feeRestocking fee rules (Pro)
Return shippingThe return shipping fee for that resolution, unless a Free return shipping rule waives it
Credit bonusBonus credit (%) on the store credit amount (Pro)

Fees never apply to reasons marked as the store’s fault, to warranty claims or to EU withdrawals. Keep-it refunds carry no return shipping fee.

A refund creates a WooCommerce refund with the returned line items and quantities. Refund goes to decides where the money goes.

OptionEffect
The original payment methodWooCommerce asks the gateway to refund. Gateways without refund support record the refund only.
The customer’s DevDiggers WalletRecords the refund in WooCommerce and adds the money to the wallet balance (Pro with Wallet)
Record only (I pay it back myself)Records the refund in WooCommerce. You send the money yourself.

The default comes from Gateway refunds on the Resolutions tab. The history logs the outcome, for example “Refunded $49.00 to the original payment method.” A refund recorded without the gateway reads “Refunded $44.55 (recorded in WooCommerce; pay it back manually).”

Store credit pays the customer in a form they spend in your shop.

  • A coupon pays it as a single-use coupon for the customer’s email. It expires after Coupon expires after (days) on the Resolutions tab, which defaults to 365. The code shows on the request page with “Enter it at checkout on your next order.”
  • The customer’s DevDiggers Wallet takes the amount as wallet balance. It needs a customer account. See DevDiggers Wallet.

The result reads like “Issued $21.78 store credit as coupon CREDIT-RTK0JXTJ.”

Completed store credit request with the coupon code and credit bonus

WPReturns also records store credit as a WooCommerce refund that moves no money. Order totals, cashback and points then follow the return. The bonus is left out of that record.

If WooCommerce fails to record that refund, the credit still goes out. A private note on the request gives the reason. It starts “The credit was issued, but WooCommerce did not record it as a refund on the order”.

An exchange creates a new order linked to the request, with the items the customer picked. The returned items count as credit on it.

Customers are only offered Exchange when Same product or Any product exchanges are allowed on the Resolutions tab. With both off, the option does not show.

Price of the new itemsWhat happens
Same as the creditThe exchange order is created as processing at zero
HigherThe exchange order waits for payment. The customer gets a Pay the difference button.
LowerThe difference is refunded on the original order

The result reads like “Created exchange order #1043. The customer pays the difference of $12.00.”

A cheaper exchange reads “Created exchange order #1309. Refunded the price difference of $3.30.” Use Open exchange order on the request screen to see it.

With Refund goes to set to the customer’s wallet, the difference is added to their DevDiggers Wallet balance. The result then ends with “Refunded the price difference of $3.30 to the customer’s wallet.”

Completed exchange with the exchange order and Open exchange order button

Warranty resolutions: repair and replacement

Section titled “Warranty resolutions: repair and replacement”
  • Repair marks the request as repaired and logs it. You handle the repair outside WooCommerce.
  • Replacement creates a linked order for the same items at no charge.

A warranty claim’s items show “Warranty until” with the end date. The Resolution field starts on the customer’s choice, such as Replacement.

Received warranty claim set to Replacement with the customer photo

A Keep it (returnless refund) rule in Pro lets matching items stay with the customer. The request skips the shipping steps. The customer sees “No need to send this one back.” You resolve it with a refund or store credit as usual.

With Automatic resolution on the Automation tab (Pro), WPReturns resolves received returns on its own. It waits the hours set in Wait after receipt (hours) and uses the resolution the customer chose. A failure shows as an internal note: “Automatic resolution failed: …”.