When the catalogue doesn't have it, the AI goes and gets it
Oman flag
Build · Ecommerce · Oman

workspace_premium When the catalogue doesn't have it, the AI goes and gets it

Cross-border product data sourcing and a three-mode AI assistant for an Omani multivendor marketplace — searching the live catalogue, sourcing from external supplier catalogues on demand, and saying so honestly when neither has an answer.

auto_awesome Web Application Story

We build for the failure before it happens — here is what that looked like on this project.

This page is structured as buyer questions with answer-first evidence, so clients can quickly understand risk, solution logic, and measurable outcomes.

crisis_alert Problem shape

Cross-border catalogue sourcing and AI-assisted merchandising, on a multi-model commerce platform

insights Lead outcome

3 AI modes · 9 transaction models · 20 languages · In progress

category Delivery mode

Build

3

assistant modes, all live

9

transaction models, one spine

20

interface languages

1

human sign-off on AI listings

menu_book The whole story, in one paragraph

Nine transaction models on one catalogue spine.

Nine transaction models on one catalogue spine — retail, wholesale, trial, group-buy, customisable, discount, RFQ, service and vendor storefronts — with dropshipping, a spare-parts system, a wallet, a discount engine and a real-time layer, in twenty languages across two script directions. Built by XMARTECH end to end.

gpp_badWhat was breaking or what was the risk?

A thin catalogue is the normal condition for a new marketplace. Buyers hit empty results. An AI can invent a match instead of returning none. AI-written product data can publish unreviewed. Bulk import of foreign catalogues can create unbounded ingestion cost and legal exposure. Foreign-language listings can stay invisible to local search. Group buys can collapse with buyer money already committed. Quote requests can expire without response. Inventory can fragment across multiple transaction models. A platform can get tied to one host, runtime, or vendor roadmap.

build_circleWhat happens when a marketplace doesn't stock what the buyer is searching for?

It sources it. The assistant searches the live catalogue; on no match it discovers the product from external supplier catalogues and imports it on demand; on still no match it returns guidance and related products. A thin catalogue is the normal condition for a new marketplace, and the assistant is built for that condition rather than assuming it away.

precision_manufacturingHow was it built to hold?

XMARTECH built the entire platform end to end — frontend architecture (TanStack Start / Router / Query), data layer (Drizzle), AWS infrastructure, a three-mode AI shopping assistant, cross-border product data sourcing with on-demand import, gap-driven ingestion, AI-assisted listing generation with confidence scoring and human sign-off, a twenty-language interface with RTL Arabic and direction switching, brand entity aliasing across twenty languages, per-field bilingual product content with tracked translation state, search token indexing, nine transaction models on one catalogue spine, direct store engine, wholesale, RFQ engine, buygroup engine, dropship engine with markup floor and ceiling enforcement, spare-parts system, services, vendor storefronts, discount engine, wallet, real-time layer (chat, notifications), organisations, teams, roles and permissions, first-party error and event telemetry, and anonymous cart persistence through login.

How it's wired

The obvious build

Nine separate storefronts with nine inventories and nine admin surfaces. A catalogue filled by bulk import of a foreign supplier's inventory.

This one

One catalogue spine with nine modes layered on it u2014 and a catalogue filled by demand, with the assistant's three modes as the branch: live catalogue, on-demand external sourcing, or honest guidance when neither has an answer.

TanStack Start
Drizzle
AWS
AI Assistant
RTL Arabic
Multi-model Commerce

monitoringWhat we engineered against

  • Buyers hitting empty results on a thin catalogue
  • An AI fabricating a match rather than returning nothing
  • AI-written product data publishing unreviewed
  • Unbounded ingestion cost and legal exposure from mirroring a foreign supplier catalogue
  • Foreign-language listings invisible to local search
  • A group buy collapsing with buyers' money already committed
  • A quote request expiring with no vendor response and no escalation
  • A reseller destroying another vendor's pricing
  • Inventory fragmenting across nine transaction models
  • A platform tied to one host, runtime or vendor roadmap

info Status: in progress, not delivered. This story reports engineered failure modes and countable capability figures, not commercial outcome numbers. No faster/lighter/improved claim is made because no benchmark has been measured.

flare The part they didn't know to ask for

XMARTECH built the AI shopping assistant for an Omani multivendor marketplace with a defined behaviour for having no answer. When a buyer's query matches nothing in the live catalogue, the assistant sources the product from external supplier catalogues and imports it on demand. When neither the catalogue nor external sources can satisfy the request, it returns guidance and related products rather than a wrong match. Products enter the catalogue because a buyer asked for one — never because a bulk import was run.

// A thin catalogue is the normal condition. The assistant is built for that — not assuming it away.

The refund path for the deal that doesn't happen

When a group buy fails to fill, refunds return automatically to the correct wallet or sub-account. The money path for the deal collapsing was designed alongside the path for it succeeding.

The request nobody answers

A buyer's quote request goes to all matching vendors with a 24u201372 hour response window. If no vendor responds, it escalates to an administrator rather than expiring silently.

The lock-in decision, made before any code existed

The client's engineers had specified the framework before the build began. XMARTECH changed it. The platform runs on an architecture not tied to a single host, runtime or vendor roadmap u2014 so the client can move hosting, change backend language, or replace the data layer without rewriting the product.

quizBuyer questions, answered

What happens when a marketplace doesn't stock what the buyer is searching for?

It sources it. The assistant searches the live catalogue; on no match it discovers the product from external supplier catalogues and imports it on demand; on still no match it returns guidance and related products. A thin catalogue is the normal condition for a new marketplace, and the assistant is built for that condition rather than assuming it away.

How do you fill a catalogue without bulk-importing a foreign supplier's entire inventory?

You import on demand and let failed searches decide. Products a buyer actually asked for enter the catalogue; nothing else does. The catalogue stays clean, storage and compute stay bounded, and the volume of third-party product data held stays proportionate to real demand.

How do you stop an AI from inventing a product match?

You define what it does when it has nothing. The assistant's third mode is a designed behaviour, not a fallback error u2014 guidance and related products in place of a fabricated result.

How does a listing an AI wrote get approved?

By a named person. Every AI-generated listing records its own confidence score and review notes, and a named administrator signs off before it publishes. The AI never has the last word.

How does a supplier listing written in another language become findable by a local buyer?

Through entity aliasing and per-field translation. Brand names carry aliases in twenty languages, so a Latin-script brand resolves from an Arabic, Chinese or Japanese query. Product names, descriptions and specifications are held per-language with tracked translation state, so it is always known what is translated and when.

Can one platform run retail, wholesale, group-buy and quote-based trade at the same time?

Yes, against one catalogue. Nine transaction models share a single product spine, one account, one wallet and one permission model u2014 so inventory does not fragment across nine systems and a vendor does not maintain nine listings for the same item.

What happens when a group buy doesn't fill?

Refunds return automatically to the correct wallet or sub-account. The money path for the deal collapsing was designed alongside the path for it succeeding.

Product surfaces

Ultrasooq buyer experience

Live product browse and detail surfaces from the Ultrasooq buyer app.

tuneUnder the hood

3 assistant modes, all live 9 transaction models on one catalogue spine 20 interface languages 2 script directions 1 human signature before any AI listing goes live 0 products imported without a buyer having asked 24u201372h quote response window with automatic escalation

Method first. Outcomes when the client releases them.

Build ongoing for an Omani multivendor marketplace. The differentiator right now is the failure modes engineered against and the capability numbers proven in product, not commercial outcome claims that do not exist yet.

forumDirect conversation model

01

You share business goals, constraints, and deadlines.

02

You talk directly with the engineering team, not only account managers.

03

We turn strategy into a scoped delivery plan and execution timeline.

auto_graph Project-type focus

  • Modular architecture decisions
  • Scalable data interaction
  • Fast product iteration loops