Skip to content

Product Images

Matt MacDougall edited this page Sep 9, 2026 · 1 revision

Product images

Image import is part of product mapping and has its own feature flag, mageos_netsuite/enable_disable_features/get_product_images. It defaults to enabled.

Configure the NetSuite file fields

In Product synchronization:

Setting Purpose Shipped default
NS attributes for images Comma-separated custom item field IDs whose values are NetSuite File references. custitem_item_zoom_image_1 through custitem_item_zoom_image_4
NS attributes for base image The field used for base, small, and thumbnail images. Include it in the full list. custitem_item_zoom_image_1
Compare image file name before import Reuse matching filenames rather than downloading again. Yes

The fields must return file references with names and internal IDs. They are not arbitrary external image URLs. The SOAP role needs access to the referenced files.

What import changes

The importer reads the configured file references, normalizes filenames, and fetches file content through the SOAP File API. Files are written under the Magento media import directory for catalog import. The configured base image supplies the base/small/thumbnail roles; other downloaded files become additional images.

For an existing product, gallery cleanup runs before downloads. Gallery entries that do not match the current NetSuite image list can be removed, and the code attempts to delete their files. An empty NetSuite image list can therefore remove existing gallery entries. Images added only in the store are not protected as a separate ownership class.

With filename comparison enabled, a changed NetSuite file that keeps the same name can be treated as already imported. With comparison disabled, the importer can remove and download images again on each product update. A failure after cleanup can leave the product without the expected images.

Acceptance check

Use a backed-up sandbox product with an existing gallery. Verify base/small/thumbnail roles, additional images, removal behavior, a changed file using the same name, an empty image list, and a denied file download. Check the storefront image itself, not only the successful product queue status. Leave image import disabled when images are owned by the store.

Sources: image observer, image workflow, gallery reconciliation, download, filesystem.

Clone this wiki locally