An Austrian company that builds IT solutions for hotels and spas hired TwinCore to build an AI sales chatbot for ecommerce — a conversational assistant for its nopCommerce stores. Shoppers describe what they need in plain language; the bot finds the right product or service, answers store questions, adds products to the cart, and books services in chat with a QR ticket after payment. The store team installs the plugin, brands it, and goes live from the admin without a developer.
- 1 .NET developer
- 1 Angular developer
- 1 UI/UX designer
- 1 QA engineer
About the client
The client is an Austrian company that builds IT solutions for hotels and spas. Its offering includes nopCommerce online stores where guests buy products and vouchers and book treatments such as massages.
Solution
TwinCore built the assistant as a nopCommerce plugin (nopCommerce is an open-source .NET ecommerce platform) with an Angular chat widget on the front and a grounded retrieval layer behind it. The store installs one package; there is no separate service to host.
- nopCommerce plugin — the widget, settings, and store-data access ship as one package installed from the admin
- Angular chat widget — renders the conversation, product cards, option and date pickers, and the QR ticket on desktop and mobile
- Store knowledge base — indexes catalog, prices, stock, and store information (hours, delivery, policies), refreshed when the underlying records change
- Grounded answering (RAG) — matches a free-text request against the store index and answers from retrieved records; RAG is Retrieval-Augmented Generation, the pattern of grounding an LLM's answer in retrieved data
- Provider-agnostic LLM layer — routes prompts to a configured provider through one interface, selected in the admin
- Escalation paths — phone-callback capture when no slot is free, and live-agent handoff for cases a human should own
The challenge
The client wanted shoppers to reach a product or a bookable service by describing it, instead of clicking through category trees and filter facets. Standard on-site keyword search matches product titles and descriptions, so a shopper who describes an item by its use or specs can land on a short result list, and pre-sale questions about delivery or opening hours fall outside product search entirely.
Two things made this harder than adding a support chatbot. First, selling from a live store means the assistant has to map a fuzzy request to real products with current price and stock, run a booking flow with dates and slots, write to the cart, and answer delivery and policy questions from indexed store data. Off-the-shelf chatbot tools could cover FAQ responses, but they did not provide the complete catalog, booking, cart, and QR-ticket workflow this project required.
Second, connecting a raw LLM (large language model) straight to the storefront is unsafe: with nothing constraining it, the model can invent products, prices, and delivery terms that do not exist. The real work was grounding the model in the store's own data and giving it safe, controlled actions, not the chat bubble itself.
How the AI sales chatbot for ecommerce works
The same widget supports both physical-product purchases and service bookings, giving shoppers one conversational interface for both flows.
Physical products. The shopper describes what they want, the bot returns matching products with price and availability, the shopper picks a variant and quantity, and the item is added to the standard nopCommerce cart. Checkout then follows the store's normal cart and payment flow.
Bookable services. The shopper selects a service, then an option, a date, and an available time slot, and the booking is created in nopCommerce. Payment happens outside the chat. The bot first displays a QR code that opens the external payment page, and the payment details are also sent by email. After the payment provider confirms the transaction through a webhook, the bot returns a separate QR ticket for the booked service in the chat.
The shopper can find a product or book a service without navigating catalog and category pages.
Architecture and engineering decisions
The build routes each shopper message through grounded retrieval before the model answers, and separates the two purchase paths behind one widget.
- Product-type routing: one path for shipped goods (variant, quantity, nopCommerce cart) and one for bookable services (option, date, slot, booking, QR ticket).
- External payment with webhook confirmation: services are booked in chat, paid through the store's payment provider outside the widget, and the ticket is released only after the provider's webhook confirms the payment.
- Store knowledge base + RAG: product and service recommendations and store-information answers are grounded in catalog, availability, and policy data retrieved for the current query.
- Provider-agnostic LLM layer: the admin selects the provider; the rest of the plugin is unchanged.
- Admin configuration: on/off toggle, color scheme, avatar, LLM provider, provider API key, and custom behavior instructions.
Engineering challenge: keeping recommendations accurate
A core engineering challenge was making the model reliable enough for a live ecommerce storefront. An LLM will happily produce a plausible product name and price that the store cannot fulfill, and one wrong price shown in chat is a support ticket or a lost sale.
The LLM does not create product, pricing, or availability data. Every recommendation is linked to a real nopCommerce product returned by the retrieval layer, including its product ID, price, and availability information. If retrieval returns nothing for a request, the assistant says so and offers the closest matches, a callback, or a live agent rather than inventing an answer.
One tradeoff we made: provider-agnostic LLM layer over a hardwired API
Wiring the bot directly to a single LLM API would have been faster to implement. TwinCore built a provider-agnostic layer instead. The admin selects a provider and pastes its own API key through a single configuration interface, so the store runs on its own LLM account and billing. It cost extra abstraction work up front.
This gave the client several practical advantages: the store can switch provider for cost or model quality without a rebuild, keep data in a required region, and stay flexible when a vendor changes terms.
Architecture and UI
Screenshots use a seeded demo storefront rather than the client's live products. The widget, admin settings, and flows shown match production.

Who this is for
Hotels, spas, and treatment studios selling bookable services online are the core fit, along with the software providers that run webshops for them. A nopCommerce retailer whose catalog is large enough that filters and category trees get in the way fits too.
The strongest fit is a store where shoppers struggle to find the right product, repeatedly ask pre-sale questions, or abandon a complex booking flow. Documented online cart abandonment averages about 70% (Baymard Institute), with a long or complicated checkout among the preventable reasons. Stores with short, simple catalogs are less likely to see the same benefit.

Technologies used
Why TwinCore
The project required more than an off-the-shelf support chatbot or a standalone AI search plugin. FAQ tools could not cover the complete catalog, booking, payment, cart, and ticket workflow, while building the required LLM and retrieval capabilities in-house would have required a specialized team.
TwinCore fit on three points. First, prior nopCommerce plugin and storefront delivery, shown in the custom nopCommerce store for a DTC drinkware brand. Second, RAG and LLM engineering from the custom AI agent platform for business workflow automation. Third, a small senior team that could put a grounded, cart-writing widget in front of real shoppers rather than a scripted demo.
Delivered outcomes
- One nopCommerce plugin now handles product discovery, store questions, cart actions, and service bookings.
- Store teams manage branding, behavior, and LLM configuration without developer involvement.
- Requests that cannot be completed automatically continue through callback capture or live-agent handoff.
Need an AI chatbot for your nopCommerce store?
This call is for a nopCommerce store where shoppers give up on search, or where bookable services stall in a separate booking path. Book a 30-minute architecture call.
We will map your catalog, store data, and cart and booking flow, name the grounding and LLM-provider setup that fits, and give a delivery and cost ballpark on the call. You leave with a concrete build outline, not a proposal cycle or a slide deck.

LinkedIn
Twitter
Facebook
Youtube
