Perspective view of industrial shelves filled with organized plastic storage boxes in a warehouse.

Photo by Zhengyang TIAN on Pexels.

A store owner who already knows exactly what needs doing — raise a price, check what is low, see who bought what — should not have to translate that into admin-screen clicks before SimpleWP can help. That is the premise behind SimpleWP’s WooCommerce AI assistant: a chat interface that runs a real online store in the words a store owner already uses, in their own language and their own currency. This is the engineering story of how a single team shipped that assistant across four languages at once, and what it took to keep every one of them honest.

Building a WooCommerce AI Assistant in Four Languages

SimpleWP built a set of chat tools that let a store owner run their WooCommerce store by describing what they want, in their own words. Checking stock, updating prices, reviewing orders and customers, and reading sales reports are all handled the same way — by asking — without ever opening the WordPress admin dashboard to find the right screen first.

Every one of those chat tools answers back the same way it was asked. Confirmations, status labels and error messages render in the user’s own language, and every price or total appears in the store’s own configured currency rather than a fixed one chosen for convenience. Four languages are supported today: English, French, Hungarian and Dutch. A French-speaking store owner sees French throughout the conversation; a store priced in forints sees forint figures, never a currency the store never chose to use.

Shipping that combination — the right language and the right currency, on every single tool, at the same time — is a different kind of problem than shipping one tool well. It means the language and the currency can never be an afterthought bolted onto a finished tool; they have to be part of the same foundation every tool is built on.

One Shared Command Builder and REST Dispatcher Behind the Assistant

None of this works by accident, and it does not work by repeating the same careful logic in every tool either. Every WooCommerce chat tool talks to the store through one shared, safe command builder, and the handful of actions that go through WooCommerce’s own REST API instead run through one shared dispatcher built for exactly that purpose. Because every tool goes through one of these same two paths in, every tool also inherits the same safety and formatting guarantees automatically — an improvement made once in the shared builder reaches every tool that depends on it, rather than needing to be found and repeated tool by tool.

Building that shared command builder also meant settling an engineering detail that earlier had not matched production: the exact shape of the underlying commands needed to match the real, installed version of WordPress’s own command-line tool actually running in production, not an assumed or idealized one. The team corrected that shape once, directly in the shared builder, so every WooCommerce chat tool now builds its commands against the real installed version rather than against an assumption about what that version expects.

The convention is checked automatically too, not left to rely on everyone remembering it. A dedicated automated test reads every WooCommerce chat tool’s own source code and confirms that none of them builds a command through unsafe string interpolation or an unescaped raw value, so the safe-builder convention cannot quietly be bypassed by a future tool added later without anyone noticing.

Confirmation Before Store-Wide Changes

A store’s own currency and its base country are store-wide settings, not one product’s details tucked away on one page. A store owner can change either one by chat, and the assistant asks for confirmation before applying the change, treating a setting that reshapes the whole store differently from an ordinary, single-item request.

Testing Against the Real WooCommerce Store

A chat assistant that touches a real store earns its trust by staying close to how the store actually behaves, rather than to what documentation or a separate report implies. Three design choices behind the WooCommerce chat tools follow that same instinct.

The order-status tool deliberately will not set an order to “refunded” directly, because that specific status change creates a real monetary refund on WooCommerce’s own side, not a label change on a screen. The team confirmed that exact distinction by testing directly against the store’s real, installed WooCommerce version rather than assuming it from documentation alone; the behavior lives alongside the rest of the order tools in chat, with the refund itself completed deliberately in WooCommerce admin, where the full order and payment sit together.

The customer-lookup tool follows the same instinct toward the real thing over the documented thing. Rather than reading from WooCommerce’s separate analytics customer report, it computes its answer directly from the store’s own order records, because the order records are the store’s live, authoritative account of what has actually happened to date. A store owner can look up a customer from chat and get an answer built from the exact records the store itself relies on for everything else.

The four sales-question chat tools — top products, a revenue summary, who bought a given item, and top customers — read the same underlying analytics reporting data that WooCommerce’s own built-in reports use. That data arrives through its own import, and the tools check for it directly: if an import has not finished yet, the tool says so plainly and asks the user to wait, rather than answering with a partial figure dressed up as a complete one. Readers can see the full range of sales questions chat can answer in the help center.

A Four-Language Help Center for the New Assistant

Documentation matters just as much as the tools themselves once a feature spans four languages at once. SimpleWP’s built-in help center gained a new “Online store” category, published in all four supported languages, with worked example prompts for every chat capability described above — so a store owner can see exactly what to type before trying a request for the first time.

Those four-language articles were deliberately merged only once the catalog and store-health tools they document had actually shipped, so the published examples would never describe a chat capability that did not exist yet. The content rollout itself is built to halt the whole deploy outright if a translated article’s own precondition is not met, rather than ever publishing an article in only one of the four languages while the rest catch up later.

A Completeness Check Baked Into CI

Four languages are easy to promise on launch day and easy to let slip afterward, one small missed string at a time. SimpleWP closed that gap with an automated four-language completeness check that runs in the project’s own continuous integration pipeline, covering every chat tool and every translated string in this capability. A tool that ships without its French, Hungarian or Dutch strings fails the build before it can ever reach a real store, rather than shipping quietly incomplete and waiting to be noticed by a user instead.

Shipped as One Coordinated Milestone

Shared primitives, orders and customers, catalog and store health, sales questions, and the four-language help content all shipped to production together, as one coordinated milestone, rather than arriving piecemeal across separate releases spread over time.

The same milestone carried eight further chat tools beyond the ones already covered here: creating many products at once from a pasted list, managing product variations, managing product tags and global attributes, and asking for a single store-health summary across the whole catalog at once.

Readers who want the store owner’s own side of this — the exact phrasing that works day to day, what is protected on purpose, and what deliberately stays inside WooCommerce admin — can read how to run an online store by chatting, or, for an agency managing several storefronts at once, managing multiple WooCommerce stores. It sits alongside SimpleWP’s other engineering writing, including the team’s own postgres database migration story and how AI agents connect to SimpleWP through MCP and OAuth — different layers of the stack, told with the same engineering detail.

If engineering credibility like this is part of how you choose a platform to build a store on, start building with SimpleWP.