Nina Web & IT Services (Ninawebs)
Documentation

Install, update & configure

Everything you need to get the module running, keep it updated, and set it up for your store.

Before installation

This module does not automatically refund orders, restock products, void payments, or make legal decisions. It provides the request workflow and admin tools so the merchant can review each case.

Installation

1
Upload the OCMOD package

Go to Admin > Extensions > Installer and upload the extension file. Wait until OpenCart confirms the upload has completed.

2
Refresh modifications

Go to Admin > Extensions > Modifications and click Refresh, so OpenCart applies the OCMOD changes.

3
Clear theme and modification cache

Go to Admin > Dashboard > Developer Settings and clear the theme, SASS, and modification caches. Buttons vary slightly by OpenCart version or theme.

4
Install the module

Go to Admin > Extensions > Extensions > Modules, find Ninawebs EU Withdrawal & Cancel Button, and click Install.

5
Set admin permissions

Go to Admin > System > Users > User Groups, edit your administrator user group, and allow access/modify permissions for the module and its request management screen.

6
Configure the module

Enable the module, enable guest order links if you allow guest checkout, choose which order statuses allow or hide pre-dispatch cancellation and withdrawal/return requests, configure notification emails, then save. Open the Order Status Updates tab if you want to map an optional whole-order OpenCart status to each request status in advance; new and upgraded installs default every mapping to No order status change.

Optional: create a dedicated order status (e.g. Customer Cancelled) under Admin > System > Localisation > Order Statuses to use as the automatic holding status for eligible pre-dispatch cancellations. This helps prevent staff from accidentally packing or shipping an order after a cancellation request.

Optional Journal 3 compatibility add-on

The base module is theme-neutral and does not modify Journal templates directly. If your store runs Journal, the separately installable Journal 3 compatibility add-on is now available for the source-verified Journal 3.1.14, 3.1.15, 3.2.8, and 3.2.10 account-page patterns.

1
Install the main module first

Complete the installation steps above before installing the add-on.

2
Upload the add-on package

Go to Admin > Extensions > Installer and upload the Journal 3 compatibility .ocmod.zip.

3
Refresh modifications and clear caches

Go to Admin > Extensions > Modifications and click Refresh, then clear the Journal and OpenCart theme caches.

4
Open the Journal Theme tab

Reopen the main module settings page. A new Journal Theme tab provides a best-effort switch for the Twig-based customer account-page link, a shortcut to the button editor, and step-by-step Journal placement instructions.

Footer link/button injection is intentionally not attempted, because Journal builds that area from database-managed rows, columns, and modules. Use Journal > Footer > Builder instead: Quick Edit the wanted Links Menu and add the public route as a Custom URL, or click + Add Module, open My Modules > OpenCart, and select the configured Ninawebs EU Withdrawal — Button instance. See the Footer Builder placement guide for a walkthrough with screenshots, or the Layout Builder placement guide if you'd rather place the button on the Account layout directly.

Updating

1
Back up first

Create a full file and database backup before updating.

2
Upload the new package

Go to Admin > Extensions > Installer and upload the new package. In most cases you do not need to remove the old uploaded package first.

3
Refresh modifications

Go to Admin > Extensions > Modifications and click Refresh.

4
Clear caches

Go to Admin > Dashboard > Developer Settings and clear the theme and modification caches.

5
Re-save the module settings

Open the module settings page under Admin > Extensions > Extensions > Modules and click Save.

6
Refresh layouts and order statuses

Click the "Refresh layouts and order statuses" button on the module settings page.

Don't uninstall before updating, unless support specifically asks you to. Uninstalling can reset module settings (selected order statuses, notification email, the guest-link token secret) and may break guest links created before the upgrade. Existing request history stays in the database either way, but settings do not.
Want to remove the old package from the Installer list to keep it tidy? That's fine, just don't refresh modifications in between. Safer sequence: remove the old package, immediately upload the new one, and only refresh modifications once the new package is installed.

After updating, check:

Uninstalling

Disable the module first under Admin > Extensions > Extensions > Modules, then uninstall it and refresh modifications. Request and audit history tables are preserved so existing records are not lost, but module settings (order statuses, notification email, the guest-link token secret) are reset, which can break guest links created before the uninstall. If you are updating rather than removing the module for good, use the Updating steps above instead of uninstalling first.