Get in touch
OpenCart

Dotdigital for OpenCart — contacts, orders and abandoned carts

Subscription with consent to Dotdigital from OpenCart 4.x, 3.x, 2.3; Pro adds orders in Insight data, abandoned carts, SMS, segment fields, a journal. Lifetime licence.

Pro · lifetime licence Staging copies are included. The more sites, the cheaper each one
Compatibility
OpenCart 4.0.2.0–4.1.x, 3.0.x, 2.3.0.2 · module language: English
PHP
7.0 or newer
Version
v1.0.0 (OpenCart 4)
v1.0.0 (OpenCart 3.x)
v1.0.0 (OpenCart 2.3)
Licence
a site + a staging copy, lifetime
Trial
7 days, no card, one per site
Updated
November 2026
Or all 394 Pro modules with All Access — 4 990 ₴ / year ≈ €98

What Free has,
and what Pro adds

The free version works with no time limit. Pro adds the rest of the features in the table.

Feature Free Pro
API user connection, the account region is found by itself ✔ ✔
Choice of the newsletter list from the account ✔ ✔
Subscription with consent: the OpenCart newsletter option and a guest checkbox ✔ ✔
Consent record with every subscription: text, time, page, IP, browser ✔ ✔
Single or double opt-in ✔ ✔
Unsubscribe from the list when the buyer turns the newsletter off ✔ ✔
Dotdigital block on the order page: contact, Send contact, Check in Dotdigital ✔ ✔
Background sending with retries and a pause on a rate limit ✔ ✔
Orders in Insight data (the orders collection) — ✔
Existing customers and orders in one background run — ✔
Customers list and a list per customer group — ✔
Data fields for segments — ✔
Abandoned carts: record and Dotdigital program — ✔
SMS at an order status — ✔
Status events on the contact timeline — ✔
Order scope: all buyers or only those who agreed — ✔
Journal of everything sent and Retry — ✔

What it looks like

Connection to Dotdigital
Connection: API user, password, region and the button that saves them and shows the account.
Newsletter settings
Newsletter: the list, consent at registration and for guests, the consent text, single or double opt-in, unsubscribe.
Customers and orders
The “Customers and orders” tab: lists, order statuses, data fields for segments, import of existing data; Pro features are marked.

Key points

What the buyer sees

Nothing extra. The buyer registers, turns on “Subscribe” on the newsletter page, or ticks an optional box with the consent text when checking out as a guest.

What the admin gets

Extensions → Modules → Dotdigital Sync: tabs “Connection”, “Newsletter”, “Customers and orders”, “Abandoned carts”, “SMS and events” and “Pro”.

How much it costs

The base version is free. Pro costs 1 290 UAH, a one-time payment for a lifetime licence.

The trial starts when you ask

A fresh install is the free version, nothing switches on by itself. The “Try Pro for 7 days” button → e-mail → the key right in the window and by e-mail.

One key — a site and a staging copy

Moving the site? Unlink the licence on the old domain and activate it on the new one yourself. A staging copy (staging., dev.) works with the same key and does not take a site slot. For studios — keys for 5 or 25 sites, or unlimited.

Technical requirements

  • OpenCart 4.0.2.0–4.1.x, 3.0.x or 2.3.0.2; PHP 7.0+ for 2.3, the cURL extension.
  • A Dotdigital account and an API user (Settings → Access → API users).
  • For abandoned carts: an active program in the account; for events: the CXDP package; for SMS: SMS credits.
  • For an even rhythm of sending, a server cron calling the address shown on the “Abandoned carts” tab every 5–15 minutes; without it the module works after the pages are served and through the OpenCart scheduler.

Version history

v1.0.0 Current November 2026

For OpenCart 4.x, 3.x and 2.3: the connection, subscription with a consent record, unsubscribe, the Dotdigital block on the order page.

Frequently bought with Dotdigital

All Access Need more? All modules (394) under one licence, new ones are added automatically. 4 990 ₴≈ €98 Learn more →

Full module description

Dotdigital Sync for OpenCart 4.x, 3.x and 2.3 adds the buyers who agreed to marketing e-mails to a list in your Dotdigital account, with a record of their consent. It is made for shops that send their e-mail through Dotdigital, UK shops in particular.

How it works. The buyer agrees at registration, on the newsletter page of the account, or with a checkbox when checking out as a guest. The module then sends the contact to Dotdigital in the background, after the buyer has already got the page: first name, last name, the newsletter list and a consent record with the text, the time, the page, the IP address and the browser. Buyers who did not agree never reach the newsletter list.

What the buyer sees

Nothing extra. The buyer registers, turns on “Subscribe” on the newsletter page, or ticks an optional box with the consent text when checking out as a guest. The page answers at once: the sending to Dotdigital runs in the background after the answer, so a slow Dotdigital never slows the shop down. A buyer without the tick is not sent anywhere. If the buyer unsubscribed in Dotdigital earlier, Dotdigital sends a confirmation e-mail, and only after it is confirmed is the contact subscribed again. Contacts with a hard bounce status are left alone.

What the admin gets

Extensions → Modules → Dotdigital Sync: tabs “Connection”, “Newsletter”, “Customers and orders”, “Abandoned carts”, “SMS and events” and “Pro”. Create an API user in Dotdigital (Settings → Access → API users), paste its address and password, and the “Save and check the connection” button shows the account name and the lists it found. The module finds the account region (r1, r2 or r3) by itself; you choose one by hand only if Dotdigital told you to. The password is stored encrypted and is never shown back in the form.

The “Newsletter” tab: pick the Dotdigital list, turn on the OpenCart newsletter option and press “Create the consent box” to make the optional checkbox for guests and registration. The consent text is stored with every subscription, so keep it the same as the words the buyer sees. Opt-in is single or double (with double opt-in the contact stays pending until it confirms through the Dotdigital e-mail). When a buyer turns the newsletter off in the account, the module unsubscribes them from the list; the contact itself stays in Dotdigital.

The order page gets a Dotdigital block: the e-mail, the marketing consent, the contact number in Dotdigital and a table of what was sent with the state of each item. “Send contact” sends the name and data fields of the buyer without changing the subscription, “Check in Dotdigital” shows the state of the contact and its lists, and “Retry” appears next to a failure. Everything the module sends goes through a queue: it retries when Dotdigital refuses, and on a rate limit it pauses until the time Dotdigital gave.

Pro sends orders to Insight data, into the “orders” collection, at the statuses you choose: order currency, total, coupon and discount, products. It also keeps a customers list and a list for every customer group, and fills data fields for segments: order count, total spend, date and total of the last order, last status, group (OC_ORDERCOUNT, OC_TOTALSPEND, OC_LASTORDERDATE, OC_LASTORDERTOTAL, OC_LASTSTATUS, OC_CUSTOMERGROUP). A button creates these fields in Dotdigital, and the orders can be limited to buyers who agreed to marketing.

Abandoned carts (Pro): when a signed-in customer leaves products in the cart, after your delay (15 minutes to 7 days) the module saves the cart to the “cartinsight” collection and enrols the contact in the active Dotdigital program you chose, which sends the reminder. When the customer buys, the record is marked as bought. Guests are not tracked: the shop does not know a guest’s e-mail address before the order. SMS (Pro) goes through the SMS channel of your Dotdigital account at an order status, from a template with {firstname}, {order_id}, {status}, {store}, {total}; a number typed without a country code gets the default one (07700 900123 becomes +447700900123 for code 44). Status events (Pro) are added to the contact timeline when the account offers event import on the CXDP package.

Existing customers and orders (Pro) go in one background run: the contacts first in a bulk import, then the orders in a bulk Insight data import, with progress on the tab and in the journal and a Stop button. Only buyers who agreed to the newsletter are imported, and the module does not force a subscription status in the batch.

How it works, step by step

  1. Install the archive for your OpenCart version and turn the module on.
  2. In Dotdigital create an API user and paste its address and password on the “Connection” tab.
  3. Press “Save and check the connection”: the module shows the account and finds the region.
  4. On the “Newsletter” tab pick the list, create the consent box and set the consent text.
  5. Buyers who agree reach the list with a consent record; the Dotdigital block on the order page shows the state.
  6. In Pro turn on orders in Insight data, abandoned carts, SMS and events, and start the import of existing data if you need it.

Under the hood

  • Sending runs after the buyer has the page; a slow or unavailable Dotdigital never slows the shop and the buyer never sees an error.
  • Every subscription reaches Dotdigital with a consent record: text, UTC time, page, IP address, browser.
  • Buyers without consent never reach the newsletter list; in Pro you can leave them out completely.
  • The API user password is encrypted and never shown back; e-mail addresses are masked in the debug log.
  • On a failure: retries, a pause on a rate limit, and the reason from Dotdigital in plain words in the journal.
  • The Insight data record of an order keeps the order currency; the totals in the segment fields are in the default currency of the shop.
  • OpenCart events, no core files changed; after removal and a new installation the settings and the journal are still there.
  • The module interface and the buyer-facing texts are in English.

Limits

  • Dotdigital makes a new contact “subscribed” at account level when no status is given. The module never adds buyers without consent to the newsletter list, but send your newsletters to that list only.
  • Newsletter changes the admin makes under Customers → edit are not sent to Dotdigital: the storefront is what is synced (registration, newsletter page, checkout).
  • Abandoned carts work for signed-in customers only.
  • Insight data record keys must be unique across the account: if two shops send to one account, give them different key prefixes.
  • A data field deleted in Dotdigital stays in the module cache for up to an hour; contacts sent in that hour stop with an explanation, and “Retry” works after the cache expires.

How to install

  1. Extensions → Installer: upload the archive for your version without renaming the file (OpenCart 4 — cc_dotdigital.ocmod.zip, 3.x — cc_dotdigital-oc3.ocmod.zip, 2.3 — cc_dotdigital-oc23.ocmod.zip).
  2. For 3.x and 2.3: Extensions → Modifications → Refresh.
  3. Extensions → Modules → Dotdigital Sync: install it and open it.
  4. Paste the API user and password, press “Save and check the connection”, pick the list on the “Newsletter” tab.
  5. For Pro: paste the key or start the trial on the “Pro” tab.

Questions
about the module

Didn't find the answer? Message us on Telegram and we'll reply within a business day.

@catcode_support Setup, compatibility, activation
Is this an official Dotdigital module?

No, it is an independent integration through the public Dotdigital API. Dotdigital is a trademark of its owner.

What do I need from Dotdigital?

An account and an API user (Settings → Access → API users). The address and password of that user go on the "Connection" tab.

Which region do I choose?

None: the "Save and check the connection" button finds the region of the account (r1, r2 or r3) by itself. You choose one by hand only if Dotdigital told you to.

Do buyers without consent reach Dotdigital?

Not the newsletter list. The free version sends only buyers who agreed. Pro can put buyers into a customers list and group lists, but never into the newsletter list; sending of orders can be limited to buyers who agreed.

What about people who unsubscribed earlier?

If a buyer unsubscribed in Dotdigital earlier and ticks consent again, Dotdigital sends a confirmation e-mail, and only after it is confirmed is the contact subscribed. Contacts with a hard bounce are left alone.

Do abandoned carts work for guests?

No. The shop does not know a guest's e-mail before the order, so only signed-in customers are tracked.

What if the data did not go through?

The Dotdigital block on the order page (and the journal in Pro) shows the reason from Dotdigital and a "Retry" button. Server failures and rate limits are retried by the module itself.

Which OpenCart versions?

OpenCart 4.0.2.0–4.1.x, 3.0.x and 2.3.0.2 — three separate archives in one product.

What happens after the trial?

Pro switches off and the free part keeps working.

Is the licence lifetime?

Yes, for OpenCart it is one payment and a lifetime licence, for two sites.

Not quite what you are looking for?

We build custom modules for WordPress, WooCommerce, OpenCart and Shopify. Tell us about the task and we'll prepare an estimate.

Order a custom module