UnoPim Field Guide / v1.0.0 / Edition 2026
Open Source · Laravel 12 · MIT License · 9.3k ★ on GitHub

UnoPim —
Hand Your
Catalog Over to Agentic AI. Free, open-source, self-hostable. From traditional PIM to conversational product management.

UnoPim is an open-source Product Information Management (PIM) system built on Laravel 12, maintained by India-based Webkul. Its standout feature isn't being "yet another PIM" — it's that 32+ product operations have been packaged as conversational AI agents. Type "translate every blue T-shirt added last week into Japanese," and the system decomposes the task, executes it, and logs the version history on its own. This guide condenses installation, tutorials, community wisdom, prompt design, and competitor comparison into a single field guide for English-speaking teams evaluating UnoPim.

9.3k
GitHub Stars
10M+
Products at scale
32+
AI agent actions
10+
LLM providers
01 / Concept
Defining the term first

What is PIM, and what
makes UnoPim different?

PIM stands for Product Information Management. In plain terms, it's a central repository for everything that describes a product: titles, descriptions, specs, images, attributes, localized copy, channel-specific variations.

The typical scenario: your store sells on Shopify, Amazon, eBay, and a Magento site at the same time. Each channel demands different field formats, and you need English, German, and Japanese versions of everything. Without a PIM, this lives in scattered spreadsheets and individual channel back-offices — and one product update means changing the same fact in five places. PIM is the single source of truth for that mess.

UnoPim's edge isn't being a PIM. It's turning the PIM from a spreadsheet you click through into a colleague you talk to.

Starting with v1.0.0 (released November 2025), UnoPim repositioned itself as an Agentic PIM. Product creation, bulk editing, categorization, translation, image generation, import/export — all of these are now wrapped as tools callable by an AI agent.

You stop clicking through 32 menus. Type "find every shoe product missing a German description, generate the translation, and queue it for my review" and Agentic PIM will search the catalog, dispatch the translation agent, draft the copy, and wait for your OK.

What really matters: it supports 10+ LLM providers (OpenAI, Anthropic Claude, Google Gemini, Groq, self-hosted Ollama, and others). You can assign different models to different tasks, cap daily token budgets, and audit every conversation through saved sessions.

02 / Environment
Check before you build

System requirements
and minimum specs

Web Server
Nginx or Apache2
Required
RAM
At least 8 GB (16 GB+ recommended for production)
Required
PHP
8.2 or higher
Required
Composer
2.5 or higher
Required
Node.js
18.17.1 LTS or higher
Required
MySQL
8.0.32 or higher
Pick one
PostgreSQL
14.x or higher (recommended for large catalogs)
Redis / Elasticsearch
Bundled in Docker stack; for self-hosted, used for cache, queue, and search
AI Provider Key
OpenAI / Anthropic / Gemini / Groq / Ollama (any one to enable AI agents)
Optional
03 / Features
Twelve core capabilities

What can UnoPim
actually do?

/ 01 Centralization

Central Product Catalog

Products, attributes, families, categories, and media in one place. Validated at 10M+ products.

/ 02 Enrichment

Data Enrichment

Custom attributes, attribute families, and a completeness score that tracks data quality per product.

/ 03 Magic AI

AI Content Generation

10+ LLM providers. Product copy, images, alt-text, and translation generated on demand, all reviewable.

/ 04 Locales

Localization

Native multi-locale architecture: every attribute scopes to a locale and/or a channel.

/ 05 Channels

Multi-Channel

The same product can have different copy, pricing, and media on web, mobile, app, or marketplace.

/ 06 Currency

Multi-Currency

Essential for cross-border commerce. Bi-directional sync available via Shopify and Bagisto connectors.

/ 07 Data Transfer

Import / Export

Large CSV/XLSX imports handled in background jobs. Real-time progress dashboard tracks them all.

/ 08 Integration

REST API & MCP

Full REST API, official PHP client, official Postman collection, and a community MCP server.

/ 09 Access

User Management

Role-based permissions. AI agent tools toggle per role — keep interns away from destructive actions.

/ 10 History

Version Control

Every product data change is logged. Trace who changed what field and when, then roll back if needed.

/ 11 Interface

Light / Dark Theme

Vue.js + TailwindCSS interface with light and dark mode toggle.

/ 12 Webhooks

Outgoing Webhooks

Async webhook delivery on product changes. Dedicated webhooks queue keeps the main thread unblocked.

04 / Agentic
The core leap of v1.0.0

How does Agentic PIM
actually work?

Agentic PIM isn't "we bolted a ChatGPT window onto the admin panel." It's a team of specialized AI agents, each owning a slice of your workflow, with an orchestrator routing your requests to the right one.

Five agents, divided by function

You never address an agent by name. You talk to Agentic PIM and it picks the right hands for the job.

[ P ]
Product Agent

Creates, updates, finds, and removes products. The one you talk to most.

[ C ]
Content Agent

Writes the words and creates the images that make products sell.

[ T ]
Taxonomy Agent

Maintains the structure underneath: categories, attributes, families.

[ B ]
Bulk Agent

Handles the work that used to eat a full afternoon, in minutes.

[ I ]
Insight Agent

Answers questions, surfaces what's missing, generates audit reports.

Supported LLM providers (mix freely)

Use OpenAI for writing, Claude for reasoning, a local Ollama model for privacy. Agentic PIM doesn't lock you to one vendor.

OpenAI
Anthropic Claude
Google Gemini
Groq
Ollama (local)
DeepSeek
Mistral
xAI Grok
Custom / OpenAI-compatible

Three operating modes (conservative to autonomous)

Review-only Mode (default)

The agent proposes changes but writes nothing. Every modification needs human approval. Start here for new teams or important SKUs.

Confirm Mode

The agent shows "here's what I'll change." It executes when you click OK. The middle ground between manual and autonomous — appropriate once your team trusts the workflow.

Auto-apply Mode (not the default)

The agent writes directly. Every action is logged in the session and reversible. Best for well-defined, low-risk SOPs like filling in missing alt-text.

05 / Install
Three paths, pick one

From zero to running
in 15 minutes

Requires Docker + Docker Compose v2+. Total time roughly 5 minutes, plus a ~90 second wait for first-time database migrations to finish.

01
Clone the repository

Pull UnoPim from GitHub and switch into the project directory.

$ git clone https://github.com/unopim/unopim.git
$ cd unopim
02
Copy the Docker environment file

UnoPim ships with a Docker-tuned .env.docker. Copy it to .env and you're done with config.

$ cp .env.docker .env
03
Start all containers

This pulls MySQL, Redis, Elasticsearch, PHP-FPM, Nginx, and the queue worker images automatically.

$ docker compose up -d

Heads up: if you already run MySQL/Redis/Elasticsearch locally, edit the FORWARD_* ports in .env and restart.

04
Wait 90 seconds, then log in

First boot runs migrations and seeders. Be patient.

# Open the browser
http://localhost:8000/admin

# Default credentials
Email:    admin@example.com
Password: admin123

For developers who want to run their own PHP/Nginx/database stack. Make sure every version listed in the requirements section is in place first.

01
Bootstrap the project with Composer
$ composer create-project unopim/unopim
$ cd unopim
02
Run the UnoPim installer

The installer walks through DB connection, default admin user, locale, and channel setup.

$ php artisan unopim:install
03
Start the local dev server
$ php artisan serve

→ Open http://localhost:8000

04
Start the queue worker (don't skip this)

Imports, exports, AI agent tasks, completeness calculations, and webhooks all rely on the queue. Forget this and these features just stall silently.

$ php artisan queue:work \
    --queue=webhooks,system,default,completeness

In production: wrap this in Supervisor or systemd so a crash doesn't go unnoticed.

No time to set up an environment? UnoPim publishes an official AMI on the AWS Marketplace. Launch a VM, log in, done.

01
Subscribe to the AMI on AWS Marketplace

No additional licensing fee — you only pay for the AWS compute itself.

# Entry point
https://aws.amazon.com/marketplace/pp/prodview-fdyosdv7k3cgw
02
Choose your EC2 instance size

For testing or proof-of-concept, start with t3.large. For production, go m5.xlarge or larger and move the database to RDS.

03
Access it after launch

The AMI ships with Nginx, PHP, MySQL, Redis, and UnoPim already configured. SSH in to retrieve the initial password, then log into the admin panel.

06 / Community
Real voices from Reddit, GitHub, and dev blogs

What's the
community doing?

UnoPim doesn't have its own subreddit yet. Discussion lives scattered across r/laravel, r/selfhosted, r/ecommerce, and independent dev blogs. Below are the most practically useful tips, hacks, and use cases — pulled from AtroPIM's comparison piece, UnoPim's own publications, and third-party developer write-ups.

/ HACK Cost · LLM Budget

Run Groq or local Ollama and keep your AI bill under a dollar a day

From the official blog: with Groq or self-hosted Ollama as the provider, teams routinely run hundreds of agent operations per day for less than $1 total.

The key knob: AI Platform settings → "Daily token budget cap." When the cap hits, agents stop. Your credit card doesn't get a 3 AM surprise.

/ Source: unopim.com/agentic-pim
/ TIP Privacy · Data Sovereignty

Sensitive catalogs (medical devices, defense, unreleased SKUs)? Route everything through local Ollama

Agentic PIM only sends the prompt needed for the current task, but if even that's too much, switch the provider to local Ollama. Your catalog never leaves the server.

Practical pick: qwen3:14b in Q4_K_M quantization runs on 7–8 GB VRAM and hits tool-calling F1 close to GPT-4.

/ Source: Developer write-ups · mem0-mcp-selfhosted
/ USE CASE Cross-border Ecommerce

Use UnoPim as the product feed source for ChatGPT Search

A community extension — UnoPim AI Product Feed for ChatGPT — generates OpenAI-spec TSV/JSON feeds automatically. ChatGPT's shopping discovery indexes them directly.

Feed URLs are protected by an admin-generated cryptographic token, so random crawlers can't scrape the data.

/ Source: unopim.com/extensions
/ HACK Claude Desktop Integration

Install the community MCP server, then say "@UnoPim" right inside Claude Desktop

Developer oledmansfeld released a third-party MCP Server that exposes UnoPim as tools for Claude Desktop. Try "@UnoPim create a new blue T-shirt with SKU TSH-01 in the apparel family" and watch it work.

Supports HTTP/SSE transport (remote access via ngrok), automatic OAuth2 token refresh, configurable product variants, and direct media upload.

/ Source: glama.ai · @oledmansfeld/unopim-mcp
/ TIP Queue Reliability

Don't forget the webhooks queue — otherwise webhooks never fire

UnoPim's webhook listener dispatches asynchronously, so every outbound webhook sits in the webhooks queue. If you omit it from queue:work --queue=, webhook events pile up in the database and never leave.

Correct invocation: --queue=webhooks,system,default,completeness

/ Source: GitHub README · unopim/unopim
/ USE CASE Honest Assessment

Who it fits, who it doesn't — the candid take from a competitor comparison

AtroPIM's comparison of the four major open-source PIMs is blunt: UnoPIM suits small businesses with straightforward requirements and no expectation of growing data complexity.

If you need field-level permissions, complex approval workflows, or an API-first no-code data model, AtroPIM or Pimcore remain the safer bets.

/ Source: atropim.com · open-source-pim comparison
/ TIP Batch Job Scheduling

Run specific Job IDs via cron — turn AI enrichment into overnight automation

UnoPim ships a dedicated terminal command that lets you execute a specific job: php artisan unopim:queue:work {JobId} {userEmailId}

Pair it with crontab and run "fill missing attributes" or "translate newly added products" every hour overnight. Walk in at 9 AM, everything's done.

/ Source: webkul.com/blog/jobs-via-terminal
/ USE CASE As a Mini-ERP

Use UnoPim as the "supplier → channels" middleware data layer

A pattern from real UnoPim customers: products enter UnoPim from suppliers, get fully enriched, then sync out to Shopify, Bagisto, and the company's own storefront. UnoPim becomes the product module of a mini-ERP.

My first impression is that it's fast, handles many products with ease, and the UnoPIM development team is amazing.

/ Source: unopim.com customer testimonials
07 / Prompts
Designing instructions Agentic PIM can execute precisely

Prompt design
examples

Agentic PIM is a multi-step tool-calling agent. The more specific your prompt, the more precisely it triggers the right tools. The five examples below cover the most common PIM workflows: product creation, bulk operations, cross-language translation, quality audits, and image generation.

Convention: {{variable}} denotes a variable; [tool] denotes a tool the agent invokes automatically.

/ 01

Create a new product (with variants)

Level · Beginner
PROMPT
Create a new configurable product under the {{apparel}} family:
- Name: {{Linen Summer Shirt}}
- Master SKU: {{LSS-2026-001}}
- Variants: Color × Size (White / Cream / Navy × S/M/L/XL)
- Default channel: {{web_us}}
- Default locale: {{en_US}}

Once you've built it, list all 12 variant SKUs and wait
for my confirmation before writing to the database.
EXPECTED FLOW
Product Agent calls [search_family] to confirm apparel exists → [create_configurable_product] → auto-expands to 12 variant SKUs (e.g. LSS-2026-001-WT-S) → enters Confirm Mode and waits for human approval.
/ 02

Bulk translate into multiple locales

Level · Intermediate
PROMPT
Translate descriptions into Japanese (ja_JP) and
Korean (ko_KR) for every product matching:

- Category: {{footwear/sneakers}}
- Created after: {{2026-04-01}}
- Condition: missing ja_JP or ko_KR description

When translating:
1. Keep brand names in English (Nike, adidas, etc.)
2. Keep model names in English (e.g. "Air Max 90")
3. Match the tone of each brand's official website,
   not casual conversational style
4. Don't write directly — summarize the count and
   show me a preview of the first 5 entries
EXPECTED FLOW
Bulk Agent + Content Agent coordinate → [search_products] filters by condition → [check_locale_coverage] finds gaps → [translate_attribute] generates per-product → returns the first 5 as preview before commit.
/ 03

Auto-fill missing image alt-text

Level · Beginner
PROMPT
For every product on {{en_US}} locale whose
main image has no alt-text, generate one:

- Style: concise, SEO-friendly, under 35 words
- Pattern: "[Product name] in [color/material],
           [most distinctive feature]"
- Avoid filler like "the image shows..." or "you can see..."
- Write directly (Auto-apply — this is low-risk)
EXPECTED FLOW
Content Agent calls [vision_describe_image] per image → applies the template → [write_alt_text] commits to the database → every change logged in the session, reversible at any time.
/ 04

Product completeness audit

Level · Intermediate
PROMPT
Build me a "this week's to-do list":

1. Find products on the {{web_us}} channel with
   completeness score < 70%
2. Sort by completeness ascending
3. List which required attributes are missing per
   entry (with locale)
4. If more than 50 entries, keep only the ones with
   the highest revenue impact (use last 30 days
   pageview data)
5. Output as a Markdown table I can paste into Slack

Report only, do not modify any data.
EXPECTED FLOW
Insight Agent calls [query_completeness_score][cross_ref_analytics] joins with pageview data → renders as Markdown table → writes nothing, pure reporting mode.
/ 05

Generate studio-quality product images

Level · Advanced
PROMPT
Generate 4 product images for SKU {{LSS-2026-001-NV-M}}
(navy, size M linen shirt).

Style spec:
- Scene: natural light, minimal white cyclorama
  background
- Angles: front / 3/4 side / back / collar close-up
- Resolution: 2048×2048, PNG
- Subject: no models — garment only, on hanger or
  floating
- Overall tone: Japanese-style minimalism, no
  over-processing

After generation:
1. Auto-generate 4 corresponding alt-texts
2. Upload all 4 to the product's media gallery
3. Set the front view as primary image
4. Show me a preview before writing
EXPECTED FLOW
Content Agent dispatches to an image LLM (DALL-E, Gemini Imagen, etc.) → [generate_product_image] × 4 → [write_alt_text] auto-generates → [stage_media_upload] stages them → enters Confirm Mode showing thumbnails for approval.
08 / Compare
The four major open-source PIMs at a glance

UnoPim vs
the field

UnoPim AtroPIM Pimcore CE Akeneo CE
Stack Laravel 12 / Vue.js AtroCore / API-first Symfony / Twig Symfony / React
Native AI Agent ✓ Built-in (v1.0+) 3rd party 3rd party 3rd party
Field-level Permissions Basic roles only ✓ Full ✓ Full Basic roles only
No-Code Data Model Requires dev ✓ Full no-code Partial Partial
DAM/MDM/CMS Optional DAM module DAM included ✓ All bundled PIM only
Best for SMB → Mid (10M+ validated) Mid → Enterprise Enterprise Small (CE frozen since 2023)
Learning Curve Low Medium High (needs consultant) Medium
License MIT GPL v3 POCL / GPL v3 dual OSL v3

/ Verdict   If your pain is "product copy, translations, and images need to be redone constantly," UnoPim's Agentic route is currently in a class of its own in the open-source PIM space. If your pain is "complex data models, field-level permissions, cross-enterprise workflows," AtroPIM or Pimcore remain safer choices.

The rest
is just installing it.

UnoPim is MIT-licensed open-source software. Spin it up, drop in your first product, talk to it in plain English — you'll know within an hour whether Agentic PIM belongs in your next stack.