Skip to main content
With the Conversational mode the AI agent describes products, manages the cart, and guides the purchase directly in the chat, without needing to open external webviews. Ideal for channels other than WhatsApp or accounts that are not verified by Meta.

Requirements

To display products you need them loaded in Jelou Shop:

Advantages

  • Works on any channel (WhatsApp, web, Facebook, Instagram, etc.) without requiring Meta verification.
  • The agent describes the products and manages the cart within the conversation.
  • Does not depend on webviews or external links.
  • No need to open external links; all catalog information is delivered directly in the chat.
  • You can search for products, view details, add to cart, and complete the purchase without leaving the chat.

Purchase flow

1

Search for products

The user requests a product and the agent searches the catalog.
2

View details

The agent describes the product with price, stock, and features.
3

Add to cart

The user indicates which products they want and the agent adds them to the cart.
4

Complete purchase

The agent retrieves the cart summary and directs the user to the payment flow.

Installation

1

Create a skill

Create a new skill for the e-commerce flow. If this is your first time, see the guide Your first skill.
2

Configure the AI Agent node

Connect the skill with an AI Agent node. In the node configuration, import the Jelou Shop MCP from the Integrations Marketplace to enable the e-commerce tools.
Import Jelou Shop MCP from the AI Agent node
If you connected your store from Shopify or WooCommerce, the Jelou Shop MCP is included automatically with the integration. You only need to import it manually if you uploaded products via API.
Then configure the following prompt:
## 🎯 Role
You are a friendly and visual eCommerce agent (use icons). You guide the user through their shopping experience until they request: a human advisor, to exit, or to pay.

## 🧰 Tools
- Search products, categories, promotions → **search_products**
- Add product to cart → **upsert_product_to_cart**
- Remove product from cart → **remove_product_from_cart**
- View product detail → **get_product_detail**
- Clear cart → **clean_cart**
- Payment / Checkout → **get_and_clear_cart** (if cart is empty, inform and offer to search for products)

## 📏 Rules
- Never invent prices, promotions, or benefits.
- Never show technical errors or tool names to the user.
- Use tools instead of assuming information.

## Successful order
If you receive a message indicating "Your order has been placed successfully" with:
  Text: ✅ Order confirmed!\n💰 Total to pay: $xx
  Buttons: 💳 Go to payment, 🔍 Add more, 🛒 View my cart

## 🧩 Completion
- Human advisor → end_function: { "flow": "advisor" }
- Exit → end_function: { "flow": "exit" }
- Payment → Run **get_and_clear_cart**. If successful → end_function: { "flow": "payment", "total": [total], "cart": [detail] }

Always run end_function with: { "output_schema": "<json>" }
Configure the following tools:
ToolDescriptionPause
Search productsSearch for products in the catalog
Product detailGet detailed information about a product
View cartGet the current contents of the cart
Add/update in cartAdd a product or update its quantity
Remove from cartRemove a specific product from the cart
Clear cartRemove all products from the cart
Get and clear cartGet the cart and clear it (checkout)
3

Access cart information

You can get the cart data at any time using:
const cartData = $memory.getJson("cartData");
The cartData object contains the following structure:
{
  "data": [
    { "product_name": "Murcia 5-Burner Stove", "sku": "whcwr0rttl", "quantity": 1, "price": "908.00", "discount_value": 908 },
    { "product_name": "Light blue t-shirt", "sku": "vj6ybab6e1", "quantity": 2, "price": "35.00", "discount_value": 70 }
  ],
  "total": 978,
  "subTotal": 978
}
FieldDescription
dataArray with the cart products
totalCart total
subTotalCart subtotal