
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.
- 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
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.
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
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


Cart Discounts (Amount-Based and N+1) for OpenCart

CatCode SEO Pack — SEO Module for OpenCart 2.3, 3.x and 4.x

AI Product Descriptions for OpenCart 2.3, 3.x and 4.x — description generator
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
- Install the archive for your OpenCart version and turn the module on.
- In Dotdigital create an API user and paste its address and password on the “Connection” tab.
- Press “Save and check the connection”: the module shows the account and finds the region.
- On the “Newsletter” tab pick the list, create the consent box and set the consent text.
- Buyers who agree reach the list with a consent record; the Dotdigital block on the order page shows the state.
- 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
- 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).
- For 3.x and 2.3: Extensions → Modifications → Refresh.
- Extensions → Modules → Dotdigital Sync: install it and open it.
- Paste the API user and password, press “Save and check the connection”, pick the list on the “Newsletter” tab.
- 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.
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.
No reviews yet. Be the first.
No questions yet. Ask one — we answer within 24 hours.
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
Buying the module
—
Charged in UAH; your bank converts it to your currency. EUR price is approximate.



















