CodeCPQ Dynamic Images.

Illustrate the current product configuration.


Try demo for free


Dynamic Images give users easy-to-understand visualization of their product. They can update dynamically with each configuration step.

Images improve the product presentation and facilitate decisions
Each product is different in its composition, e.g.,  its combination of size, shape, and color. Images help the user to better visualize the product and available alternatives. They thus assist in making configuration decisions.

Images represent the user's product configuration
CodeCPQ provides configuration support in the input form with images that can update as the user progresses with the configuration.

User interaction triggers fast image update

When a user chooses a different product attribute in the input form, the product image often needs to change accordingly. CodeCPQ automatically updates the displayed product images as the response cycle executes.

Images can be used across documents and functions

Use images on the website as well as in sales documents,quotations, confirmations, purchasing and production.

FAQ: Dynamic Images.

Read answers to frequently asked questions. Or discover more with our free trial.

Below are possible uses of dynamically generated images:

On-the-fly visualization of the current configuration during the configuration process
The front-end user or the back-end user specifies the product, for example a built-in cabinet, by entering parameters such as width and height in the input mask. Immediately after the input, the screen is updated, which can include an update of the displayed images.

Images to visualize alternatives to the current configuration
CodeCPQ allows you to visualize the options of a selection control panel as a graphic that keeps recreating itself on-the-fly according to the customer specifications.

Images on the sales documents
The images can be used on sales documents like the sales offer, the order confirmation, and the pack list.

Production drawings, also for product components
Production drawings can be produced to support production. Images can also be attached to bills of material (BoM's), i.e., one for each BoM item.

As mentioned, some of these strong features require significant programming and customization effort, but they are achievable with CodeCPQ. Please also note that this requires individual customization of Odoo ERP, which is not done exclusively via the CodeCPQ backend, but also requires deeper Odoo customization, and which is not included in the CodeCPQ scope of services.

To program dynamic images, you need knowledge of the Python programming language. In the CodeCPQ back-end, simply include the Python code for image creation in the snippets. There, you can compose the image from graphical elements like lines, areas like triangles, rectangles and circles, as well as texts via functions. Before that, you need to install the Python module svgwrite, which is not included in the CodeCPQ package / license, but can be downloaded via GitHub.

This requires appropriate Odoo knowledge and also access rights to the Odoo instance.

The size of the image (called "canvas" in svgwrite), is only limited by svgwrite. However, it makes sense to keep the canvas reasonably compact whenever performance matters, since the SVG graphic is regenerated in every response cycle and therefore takes up computing time on the server. 

Therefore, for all images uses during the configuration process, we recommend a canvas of no more than 1.000 x 800 pixels.

If you need higher-resolution images, we recommend creating them for all downstream purposes after the configuration is completed. To do use, use the code snippets  in the tab "Downstream Updates".

svgwrite supports drawing elements like path, line, rectangle, circle, ellipse, polyline, and polygon. For further information, refer to the svgwrite documentation on Github.

CodeCPQ has an open architecture. Besides with svgwrite, CodeCPQ allows the installation of other suitable Python modules that generate drawings. Doing this at your own risk and without any support or responsibility from our side, you can install the corresponding libraries on your Odoo instance. This requires appropriate knowledge and also access rights.


Want to learn more about Dynamic Images?

Sign up for the free trial now and start exploring.