Text, fonts, colours and photos on your products, with a live preview, server-rendered proofs and surcharges.
Available Updated Oct 25, 2026Version 1.0.0CS-Cart, Multi-Vendor 4.17.2 – 4.21.x No core file edits
Built for
Product Personalizer: overview1 of 18
What it does
Engraving, embroidery, print on demand, gifts and team wear need the customer's input, checked and priced before payment and shown to production exactly as ordered. CS-Cart only has a text option and a file field. Product Personalizer adds templates with text, image and choice fields, print areas on the product image, a live preview, six licensed fonts, colour palettes, surcharges and a proof workflow. It works for single stores and marketplaces.
How it works
Create a template, draw print areas on the product image and add fields: text with fonts and colours, photo upload, options. Assign it to products, categories or all of a vendor's products. Shoppers type, upload and see the preview, then add the item to the cart, where a proof is rendered on the server. In the order you approve the proof or ask for changes, download the files and print a production sheet. Vendors manage their own templates.
Features
Templates per product, category or vendor
Text fields with length, lines, allowed characters, fonts and colours
Photo uploads checked and re-encoded on the server, no SVG
Choice fields with surcharges
Print areas per view, drawn on the product image, with rotation
Live preview and an exact server-rendered proof
Surcharges per character, image, option or formula
Separate cart lines, proofs in cart, orders and e-mails
Proof review with customer e-mail and a production sheet
Private file storage, cleanup, GDPR anonymization and full page cache support
What you get
Package
kv_product_personalizer-1.0.0.zip, installed through Add-ons → Manage add-ons
Updates & support
12 months included. Download new versions from your account and install them in Add-ons → Manage add-ons or the Upgrade Center.
License
1 production installation. Staging, dev and localhost are free and unlimited. The add-on keeps working after the update period ends. How licensing works
Compatibility
We list only the builds we install and test on. “Tested” means the full test plan was run on that build; “Supported” means the build is inside the supported range and uses the same hooks.
CS-Cart version and edition compatibility
CS-Cart version
CS-Cart
CS-Cart Ultimate
Multi-Vendor
Multi-Vendor Ultimate
4.22 and later
Testing next
Testing next
Testing next
Testing next
4.21.2
Supported
Supported
Tested
Supported
4.20.x
Supported
Supported
Supported
Supported
4.19.x
Supported
Supported
Supported
Supported
4.18.x
Supported
Supported
Supported
Supported
4.17.2
Tested
Supported
Tested
Supported
Before 4.17.2
Not supported
Not supported
Not supported
Not supported
Last tested build: Multi-Vendor 4.21.2, Oct 25, 2026Tested on: Multi-Vendor 4.17.2, CS-Cart 4.17.2, Multi-Vendor 4.21.2
Requirements
PHP
CS-Cart or CS-Cart Multi-Vendor 4.17.2 – 4.21.x (tested on CS-Cart Ultimate 4.17.2 with PHP 8.1, Multi-Vendor 4.17.2 with PHP 8.1 and Multi-Vendor 4.21.2 with PHP 8.3)
PHP
PHP 7.2.5 – 8.3 (as supported by your CS-Cart version) with the GD extension, which CS-Cart itself uses for thumbnails. Text in proofs needs GD with FreeType (standard in most PHP builds); without it proofs use a plain built-in font
Theme
A theme based on Responsive, Bright or Nova (the personalizer uses the core product options hook of the product page)
Core changes
None. Hooks and template overrides only
1.0.0
Oct 25, 2026
Latest
Added 12
Personalization templates assigned to products, categories (main category path) and, on Multi-Vendor, all products of a vendor; product setting Inherit / No personalization / template.
Views per template (main product image, additional image or own mock-up image) with print areas in percent of the image and an optional rotation; drag-and-resize editor with keyboard support and a test proof.
Text fields: length, lines, allowed characters, capital letters only, fonts from six bundled SIL Open Font License fonts, colour palette, alignment, maximum size, placeholder.
Image fields: JPG, PNG and WebP only; type, content, header and size checks; pixel limits checked before decoding; EXIF orientation applied; re-encoded without metadata or appended data; SVG always refused.
Choice fields with option surcharges and formula values.
Live preview on the product page (fonts, colours, fitted text and image, view tabs), exact server proof on demand, accessible controls, quick view link.
Server-side validation and surcharges (fixed, per character with free characters, per image, per option, formula with Advanced Product Options & Price Formulas); separate cart lines per personalization; approval checkbox.
Deterministic GD proofs rendered at add to cart and copied into the order folder; cart, order, invoice and e-mail display; downloads of proofs and original images for customers and staff.
Personalized items list with proof review (approved / changes needed with a note and a customer e-mail), production sheet print view.
Private file storage, hourly cleanup of abandoned uploads (cron command), GDPR export and anonymization, order deletion cleanup.
Multi-Vendor: vendor templates and vendor-only access to their orders' personalized items and files. Ultimate: settings and templates per storefront.
Full page cache support (4.21), self-healing upgrades, license client.
Tested on Multi-Vendor 4.17.2, CS-Cart 4.17.2, Multi-Vendor 4.21.2. First release.
Can a shopper change the price or skip a required field in the browser?
No. Every value is checked again on the server when the item is added to the cart (required fields, length, lines, characters, fonts, colours, options, the approval checkbox), and the surcharge is calculated on the server. Anything else the browser sends with the item is ignored.
Which image files are accepted? Is SVG allowed?
JPG, PNG and WebP only, and only when the file name, the content and the image header agree. SVG, GIF, PDF and every other type are refused, on every CS-Cart version. Accepted images are decoded and saved again by the server, so the stored file contains only the picture: no camera or GPS data and nothing hidden behind the image.
Where are the uploaded images stored? Can someone open them by URL?
In var/kv_product_personalizer/, with neutral file names and a deny-all rule. The store hands them out only to the customer of the order (or the visitor whose cart it is) and to staff who may open the order.
Does the preview match what is produced?
The live preview uses the same font files and the same fitting rules as the server; small differences in line breaks between browsers are possible. Show exact proof and the proof in the cart are rendered by the server and are exactly what goes into the order and onto the production sheet.
Can I use my own fonts?
Version 1.0 offers the six bundled fonts, all under the SIL Open Font License 1.1, so you can use them commercially (the license texts ship with the add-on). Choose per text field which of them shoppers can pick.
Does it work with product options and variations?
Yes. Core product options stay as they are and are shown above the personalizer. Each variation can have its own template or inherit one from its category.
Can the surcharge depend on the text length or on several fields?
Per-character pricing (with free characters) is built in. With Advanced Product Options & Price Formulas you can write formulas that use the length, words and lines of each field, the number of images and the chosen options.
What happens to abandoned uploads?
Images and proofs that never became part of an order are deleted after Keep unused uploads for (days) (30 by default). Ordered items keep their own copies until the order is deleted. On request, the GDPR add-on's anonymization deletes a customer's personalization texts and images.
Does it work with full page cache and with my theme?
Yes. The product page output is the same for every visitor; uploads, proofs and the cart are personal requests that are never cached. The personalizer uses neutral styles that follow the theme's fonts and colours on Responsive, Bright, Nova and themes based on them.
Can vendors create templates?
Yes, on Multi-Vendor vendors create templates for their own products while Vendors manage their own templates is on. They see only their own orders' personalized items and files.
What happens if the license lapses?
Without a valid license (no key after the 14-day start period, an invalid or revoked key, a domain the license does not cover, or no successful check for 14 days), the personalizer is hidden and no new personalized items can be added to the cart; items already in a cart keep their personalization and price, placed orders keep their personalization, proofs and downloads, and all templates stay saved. Once the license is valid again, everything works again.
The admin panel shows a license notice.
Open Add-ons → Manage add-ons → Product Personalizer → Settings → License. The status line says what is wrong: no key, a key for another add-on, a revoked license, or a domain that the license does not cover. Fix it and click Check now. See License.
Does the add-on work on my staging copy?
Yes. Subdomains of your licensed domain (for example staging.yourstore.com) and local development hosts (localhost, private IP addresses, .local, .test) are covered by the same license.
Does the license check slow down my storefront or checkout?
No. The check runs in the admin panel or from cron, once a day. The storefront never runs it.