Settings reference
Returns → Settings. Changes apply once you click Save changes in the bar at the bottom. Reset to recommended fills in the default values but leaves your own content alone: reasons, texts, addresses, pages, category lists, Turnstile keys, recipients, the My Account address and the automatic-approval reasons. It saves nothing until you click Save changes.
All settings are stored in one option, rtkt_settings.
Returns
Your own returns policy: which orders and items customers can send back, and for how long.
| Setting | Default | What it does |
|---|---|---|
| Online returns | On | Customers request returns from My Account and the Returns page. Off: no return buttons, links or forms. The withdrawal function is separate. |
| Return period | 30 days | How long after the period starts a return can be requested (1–3650). Ends at 23:59:59 on the last day, site time. |
| The period starts | When the order is completed | When the order is completed: usually when it ships or is delivered. When the order is placed: simple, but shorter for slow deliveries. |
| Order statuses that can be returned | Completed | Pending payment, Cancelled, Refunded, Failed and Draft can't be chosen. If you untick everything, Completed is used. |
| Guest returns | On | Customers who checked out without an account can return items through a secure link from their order email or the Returns page. See the note below. |
| Ask for a reason | On | Customers choose a reason for each item. Withdrawals never need one. |
| Reasons | Wrong size or fit, Damaged or defective, Not as described, Wrong item sent, Changed my mind, Arrived too late, Other | One per line, in the order customers see them. Up to 100 characters each. While unchanged, they're shown in the site's language. |
About reasons. Each reason is stored on the item as a key made from its wording (wrong-size-or-fit). Small edits that keep the same key (capitals, punctuation) keep older requests grouped. Rewording a reason gives it a new key: older requests then show the old key as text, and Pro insights count it separately.
About guest returns. With Guest returns off, orders placed without an account can't be returned online: the Returns page look-up sends no link (the screen still shows the same neutral message), and the order-key return form says Please contact us instead of showing the items. Orders placed with an account are unaffected.
Items that can't be returned
These apply to returns only, not to EU withdrawals. Single products can also be marked under Product data → Advanced → Not returnable.
| Setting | Default | What it does |
|---|---|---|
| Digital and virtual products | On | Virtual and downloadable products can't be returned. |
| Items bought on sale | Off | Items bought below the regular price can't be returned. A coupon doesn't count as a sale. |
| Categories | none | Products in the ticked categories can't be returned. For variations, the parent product's categories count. |
Sending items back and refunds
Shown to the customer and emailed when you approve a request.
| Setting | Default | What it does |
|---|---|---|
| Return instructions | empty | Leave empty for the default text: Pack the items securely, include your return number, and send the parcel to the address below. We will refund you as soon as the items arrive. |
| Return address | empty | Shown on the request page and in the approval email while the request is approved. If it's empty, the dashboard reminds you and the approve action warns you. |
| Restock returned items | On | Ticks Put items back in stock by default when you mark items received or refund. Untick it on the request for damaged items. Only products that manage stock are changed. |
| Refund through the payment gateway | On | Ticks Refund through gateway by default when the payment method supports automatic refunds (Stripe, PayPal, WooPayments…). |
EU withdrawal function
See EU withdrawal for what the law asks and how these settings fit.
| Setting | Default | What it does |
|---|---|---|
| Withdrawal function | On | Required in the EU. Off: no withdrawal page, buttons or links. |
| Withdrawal period | 14 days | At least 14 days by law (14–3650). Use more if your terms offer more. |
| Extra days for delivery | 0 days | The legal period runs from delivery; if orders are completed when they ship, add your usual delivery time (0–90). Only used when the period starts at completion. |
| The period starts | When the order is completed | When the order is completed: plus the extra days. When the order is placed: generous, never too early. Customers can always withdraw before the period starts, for example while the order is still processing. |
| After the period | Accept and flag it | Accept and flag it: you decide; the store can't know the delivery date. Don't accept: the form explains the period has ended. |
| Order statuses that can be withdrawn from | Processing, On hold, Completed | If you untick everything, the defaults are used. |
| Withdraw from single items | On | Customers can pick items and quantities instead of the whole order. Off: for a known order they choose the whole order, or describe the items in words. |
| Categories without a right of withdrawal | none | Only for legal exceptions, such as sealed hygiene goods, made-to-order or perishable items. Your terms must say so. |
| Button label | Withdraw from contract here | The law asks for "withdraw from contract here" or an equally clear wording. Used on the form, buttons, links and the shortcode. Leave empty for the default in the site's language. |
| Confirmation button label | Confirm withdrawal | The law asks for "confirm withdrawal" or an equally clear wording. |
| Link in the site footer | Off | Prints a centered "Withdraw from contract here" link at the bottom of every front-end page. Alternatively add the withdrawal page to your footer menu, or place [returnkit_withdrawal_button] in your footer. |
| Button on orders in My Account | On | Adds the withdrawal button to eligible orders in My Account → Orders, the order page and My Account → Returns. |
| Links in order emails | On | Adds the withdrawal link to WooCommerce's processing, on-hold and completed order emails and to invoices sent from the order screen, and the return link to the completed order email. |
Pages
The Returns page holds [returnkit_portal], the withdrawal page [returnkit_withdrawal]. Both are created on activation.
| Setting | Default | What it does |
|---|---|---|
| Returns page | the page created on activation | Where guests look up orders and where return and request links point. If it isn't set or published, links point to My Account → Returns. |
| Withdrawal page | the page created on activation | Where the withdrawal button and links point. If it isn't set, they use the Returns page instead. |
| My Account address | returns |
The part after /my-account/ for the Returns section. Saving a new value refreshes WooCommerce's permalinks. |
Create missing pages recreates either page if it was deleted, trashed or unpublished, and selects it.
Spam protection
Invisible to customers. These checks run on every form a logged-out visitor can submit: the guest look-up, the withdrawal form and its confirm step, and return forms opened through an emailed link. Logged-in customers in My Account are checked with WordPress nonces instead.
Each form carries a signed token that expires after 12 hours; an older form asks the visitor to reload the page. The withdrawal review step carries the original token forward, so a quick click on Confirm withdrawal isn't mistaken for a bot.
| Setting | Default | What it does |
|---|---|---|
| Hidden bot trap | On | A field people never see; bots fill it in. |
| Minimum time on the form | 3 seconds | Submissions faster than this after the form loaded are treated as bots (0–60). |
| Submissions per IP address | 5 per hour | Counted separately per form: look-up, return, withdrawal review and withdrawal confirm (1–1000). |
| Visitor IP address from | Direct connection | Where the visitor's IP address comes from, for the rate limit, Turnstile and the IP stored with each request. Direct connection: the connecting address. Cloudflare: the CF-Connecting-IP header. Proxy / load balancer: X-Forwarded-For. Nginx proxy: X-Real-IP. Proxy headers are only read when you choose them. Only choose one if your site really sits behind that proxy: anyone can send these headers to a site that doesn't, and get around the rate limit. |
| Cloudflare Turnstile | Off | A free, privacy-friendly challenge. Get keys at dash.cloudflare.com → Turnstile. Only active once both keys are entered. If Cloudflare can't be reached, the submission is let through, so an outage never blocks a legal statement. |
| Site key / Secret key | empty | From your Turnstile widget. |
Notifications and privacy
Customer emails use WooCommerce's email design and can be edited in WooCommerce → Settings → Emails. See Emails.
| Setting | Default | What it does |
|---|---|---|
| Email the store about new requests | On | Sends New return request (store) for every new return, exchange or withdrawal. |
| Send to | empty | One address per line. Empty: the site admin email. Invalid addresses are dropped when you save. |
| Shorten IP addresses | On | Stores 192.168.1.0 instead of 192.168.1.23 with each request (IPv6 addresses are shortened too). See Privacy. |
Pro sections
With Pro active, five more cards appear above the save bar. On the free plan they aren't shown at all. If a license lapses, Pro options switch off but their stored values are kept, so renewing restores them. See Pro for how each feature works.
Exchanges
| Setting | Default | What it does |
|---|---|---|
| Offer exchanges | Off | Customers choose a replacement next to each item instead of a refund. |
| Customers can swap for | Another variation | Another variation: other sizes or colors, or the same item again. Any product in the same category: includes other variations. |
| When the replacement costs more | Customer pays the difference | Customer pays the difference: through WooCommerce's pay-for-order link. You cover it: the exchange is always free. |
| When the replacement costs less | Store credit | Store credit, Refund the difference (to the original payment method) or Nothing (say so in your policy). |
Store credit
| Setting | Default | What it does |
|---|---|---|
| Offer store credit | Off | Customers choose credit instead of a refund in the return form, and staff can issue it. Credit belongs to customer accounts; customers who ordered as guests get a link to claim it on an account. |
| Bonus for choosing credit | 0% | For example 10% more than a refund (0–100). Suggested when you issue the credit; you can change it. |
| Apply the balance at checkout automatically | On | For logged-in customers. They can switch it off in My Account → Returns. |
Return labels
| Setting | Default | What it does |
|---|---|---|
| Attach the label to the approval email | On | A label uploaded on a request is attached to the "approved" email. It's always downloadable from the customer's request page. |
Frequent returners
| Setting | Default | What it does |
|---|---|---|
| Flag frequent returners | Off | Flags new requests from customers who return a lot, and from customers CardFence has flagged. |
| Look back | 90 days | The period the counts cover (7–3650). |
| Requests in that time | 3 requests | Flag the request that reaches this number (1–1000). Pending, approved, received and completed requests count. |
| Or a return rate above | 50% | Units returned compared with units bought, once the customer has two or more orders in the period (1–100). |
| Use CardFence's signals | On | Blocked emails and attack orders, when CardFence is installed. |
| Never approve flagged requests automatically | On | Holds requests flagged as frequent returner, CardFence risk or email mismatch for a person to review. |
Automatic approval
| Setting | Default | What it does |
|---|---|---|
| Approve automatically | Off | Approves matching returns and exchanges as soon as they arrive. Withdrawals are always reviewed by a person. |
| Up to a value of | 100 (store currency) | Requests worth more than this (items incl. tax) wait for review. |
| Only for these reasons | empty | One per line, exactly as in your reasons list. Empty: any reason. Every item in the request must have one of these reasons. |