How to connect OpenCart with easySales: a complete integration guide
Connect your OpenCart store with easySales in three steps — start the wizard in easySales and download the OpenCart module, install and refresh it in your OpenCart admin, then paste the token from easySales back into the module. Centralize orders, sync stock, generate invoices and AWBs automatically, and reuse the same catalog as offers on every marketplace you sell on.
Why connect OpenCart with easySales
Sell on OpenCart and want one place to manage orders, generate invoices, push AWBs to couriers, and reuse the same products as offers on marketplaces? easySales handles all of it from a single dashboard.
Once connected, easySales pulls products and options from OpenCart and centralizes incoming orders. From there you generate invoices, create AWBs with any supported courier, and turn those products into offers on eMAG, Allegro, Kaufland, Trendyol, and 80+ other channels. Stock and order status stay in sync in both directions.
You'll start the wizard in easySales, download the OpenCart module that matches your store version, install it in your OpenCart admin, then paste the token from easySales back into the module — no code, no FTP access, no theme changes.
How the OpenCart connector works
easySales connects to OpenCart through a small .ocmod.zip module you download from your easySales account and install through your OpenCart admin. The module exposes a private endpoint easySales calls to read your catalog and orders, and registers two webhooks so order and stock changes reach easySales in near real time.
The module never connects out. easySales talks to it, authenticated with a per-website token easySales generates. OpenCart database credentials, admin passwords, and gateway secrets stay inside your OpenCart install.
Which OpenCart versions easySales supports
easySales ships a separate module build for each major OpenCart version so the integration matches your store's API and admin layout:
- OpenCart 1.5.6.4
- OpenCart 2.0.0.0 – 2.1.0.2
- OpenCart 2.2.0.0
- OpenCart 2.3.0.0 – 2.3.0.2
- OpenCart 3.0.0 – 3.0.2.0
- OpenCart 4.0 – 4.1.0.3
The wizard picks the build when you choose your version. If you're on a patch release between two of these (for example 2.3.0.1), the build for the closest lower version applies. Forked OpenCart distributions and older 1.5.x patch levels are not officially supported — the module may install but admin paths can differ.
Interactive tour
Don't feel like reading? Take the interactive tour.
Prerequisites — what to prepare before you start
A few requirements keep products from being skipped at import.
OpenCart admin access
You need admin permissions on the store to install the module, refresh modifications, and read the generated token.
A supported OpenCart version
easySales ships builds for OpenCart 1.5, 2.0–2.1, 2.2, 2.3, 3.0, and 4.0. Forked distributions and unsupported patch levels may install but are not guaranteed.
Publicly reachable storefront
easySales calls your OpenCart store to read the catalog and orders, so the storefront must be reachable from the public internet — not behind HTTP basic auth, IP allow-lists, or a maintenance-mode page.
Unique SKU per product and saleable option
Two products with the same SKU collide — only one is imported. Audit and de-duplicate before connecting, including across option combinations sold separately.
Numeric stock per product
Stock has to be a numeric value on every product.
Step 1 — Start the wizard in easySales and download the module
In easySales, go to Integrations → Online Shops → Connect Website, then select OpenCart and pick your store version. The wizard opens on the Download Module step.
Click the download button to grab the module archive (easysales.ocmod.zip or a version-specific filename like 2market-oc3x.ocmod.zip). Keep this tab open — you'll come back to it in Step 3 to finish the configuration.
Step 2 — Upload and install the module in OpenCart
In your OpenCart admin, go to Extensions → Installer. Click Upload, select the .ocmod.zip archive you just downloaded, and wait for the green "success" confirmation.
Next, open Extensions → Extensions, filter by Modules in the top dropdown, find easySales in the list, and click the green Install (+) button. After install, click the blue Edit (pencil) button to open the module's settings — you'll see a Token field. Leave this tab open; you'll paste the token from easySales here in the next step.
Step 3 — Configure the site in easySales and paste the token in OpenCart
Return to your easySales tab — the wizard is now on the Configuration step and displays your generated token. Copy the token, switch back to OpenCart, and paste it into the Token field on the EasySales module edit page. Set Status to Enabled, leave the other defaults as they are, then click Save in OpenCart.
Back in easySales, finish configuring the site. The form below the wizard collects everything easySales needs to drive the integration.
Website name and URL
- Website name — a label you choose. Only visible inside easySales.
- Website URL — your OpenCart storefront. Use the exact URL where OpenCart runs, including
https://and thewwwprefix if your domain uses it. If OpenCart lives in a subdirectory (example.com/shop), include it.
VAT and VAT for shipping
If you're a VAT payer, enter the rate for your products and a separate rate for shipping (e.g. 21 for the current Romanian standard rate). Leave blank if you're not. OpenCart's tax classes are not auto-detected — the rate you set here is what easySales uses on invoices and outbound marketplace offers.
Language and currency
Pick the storefront language (Romanian, Bulgarian, Hungarian, Polish, or English) and currency (RON, BGN, HUF, PLN, or EUR). These act as defaults for imported products and as a fallback when an order doesn't carry an explicit currency. They never override individual orders — each order keeps the currency OpenCart reported.
Product stock source
The most important decision on the form. It tells easySales where the authoritative stock value lives:
- Website — OpenCart is the source of truth. easySales reads stock from OpenCart and never overwrites it.
- easySales — easySales is the source of truth. Stock changes inside easySales (sales, manual edits, marketplace deductions) are pushed to OpenCart.
- Connected integration — your stock lives in a third-party system already wired to easySales (billing software like SmartBill, Oblio, Fakturownia or FacturisOnline; an ERP such as NexusERP or Sedona; a fulfilment partner like Fulfillro or Huboxx; and many others). easySales reads stock from that integration and pushes it to OpenCart. Connect the integration and declare its warehouse first — you can't pick this option otherwise.
Running a multi-warehouse operation? Switch to Advanced warehouse mode. Instead of binding the store to one stock source, pick one or more easySales warehouses and define how their stock is aggregated, prioritized, or split per channel. The standard setup when the same catalog ships from several locations or channels draw from different warehouses.
Default package type
Used at AWB generation when the order doesn't specify a package. Pick the type that matches most of your orders.
Step 4 — Refresh OpenCart Modifications and finalize in easySales
This is the OpenCart-specific step that catches most new connections, and it has to be the last thing you do.
Open Extensions → Modifications in your OpenCart admin and click the blue Refresh button in the top right. OpenCart compiles ocmod overrides on refresh — until you click it, the module is installed but its hooks aren't active.
Now return to easySales and click Save to finalize the connection. easySales tests the connection, registers the webhooks on your OpenCart site, and starts importing your catalog.
What happens automatically after you save
easySales handles webhook setup and the initial import.
- Two webhooks are registered on your OpenCart site: one for order changes and one for stock changes. Every order created, updated, or cancelled in OpenCart reaches easySales in near real time, and the same applies to stock updates.
- Your product catalog is imported — products and their option combinations appear in Online Shops → Products, where you can browse, edit, and turn them into offers for marketplaces.
- Incoming OpenCart orders appear in your Orders screen, where you generate invoices, AWBs, and run automation flows.
- Stock syncs according to the source you picked. If you chose easySales, stock pushes start running continuously and your OpenCart storefront reflects centralized inventory.
| From OpenCart → easySales | From easySales → OpenCart |
|---|---|
| Orders (create, update, cancel) | Stock updates |
| Products and option combinations | Order status changes |
| Stock levels | Fulfillment status from AWB generation |
| Product prices | — |
| Categories | — |
| Order custom fields (CUI, locker ID, courier choice) | — |
| Customer details and addresses | — |
| Image URLs | — |
Fine-tuning your OpenCart connection
After saving, open the OpenCart website's Preferences tab. Two groups of settings are worth a quick pass.
Order Behavior
- Allow reopening completed orders — by default, terminal statuses like "Complete" cannot revert to "Processing". Enable if you need to reopen orders.
- Allow reopening cancelled orders — same logic for cancelled orders (useful when a temporarily cancelled unpaid order is finally paid).
Synchronization
- Fetch orders — automatic import of new OpenCart orders.
- Update order status on OpenCart — push status changes from easySales back to OpenCart so both systems stay in sync.
- Update product stock on OpenCart — push easySales stock levels to your OpenCart storefront. Turn off if OpenCart is your stock source.
Click Save at the bottom of the page to apply your changes.
Options, lockers, and other OpenCart quirks
A few OpenCart-specific behaviors worth knowing:
- Product options. OpenCart products carry options (size, color, etc.) with optional per-option SKUs. easySales imports each saleable combination as a separate variation tied to the parent product by SKU. If your store uses options without SKUs, those products are imported as a single entry — set SKUs per option before connecting if you need them tracked individually on marketplaces.
- Lockers. If your shop uses a supported locker module — Sameday EasyBox, InPost, and other locker networks across the markets we serve — easySales reads the locker ID from the order custom fields automatically. No configuration needed. The locker is then used as the delivery point at AWB generation.
- Custom payment methods. OpenCart lets you add any payment method through extensions. easySales maps standard methods (bank transfer, COD, card via the common gateways) automatically. Non-standard methods come through as Unknown — contact support so we can extend the mapping for your specific gateway.
- Image URLs. OpenCart serves images from
image/catalog/...relative to your storefront root. The module rewrites these to absolute URLs at export. If product images don't appear in easySales, the most common cause is missing files on disk — OpenCart records the path even when the file is gone. - Modification cache. If you change OpenCart admin extensions or themes after the easySales module is installed, refresh Extensions → Modifications again. OpenCart silently disables
ocmodoverrides on certain admin updates. - Module updates. When a new module version is published, easySales shows a red warning in the website's Preferences. Download the new build, remove the old module from your OpenCart admin (Extensions → Extensions → Modules → Uninstall), then install the new archive following Step 2 again. Save in both OpenCart and easySales, then refresh Extensions → Modifications.
- Invoice series prefix. If you want a specific invoice series on documents generated downstream of OpenCart, set it in OpenCart admin under Settings → Option → Checkout → Invoice Prefix. easySales reads this value alongside the order.
You're connected — what's next
Once orders start arriving, the next step is automation. Set up flows to generate invoices, create AWBs, and send tracking notifications. If you also sell on marketplaces, turn your OpenCart catalog into offers and let easySales push them out.
Connect your OpenCart store in minutes
Try easySales free for 14 days. No credit card and no code changes.