> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Interação conversacional

> Experiência de compra guiada pelo agente de IA diretamente na conversa.

Com o modo **Conversacional** o agente de IA descreve produtos, gerencia o carrinho e guia a compra diretamente no chat, sem precisar abrir webviews externos. Ideal para canais diferentes do WhatsApp ou contas não verificadas pelo Meta.

## Requisitos

Para exibir produtos você precisa que eles estejam carregados no Jelou Shop:

<CardGroup cols={2}>
  <Card title="Shopify" icon="store" href="/pt/guias/integracoes/e-commerce/shopify">
    Sincronize a partir do Shopify
  </Card>

  <Card title="VTEX" icon="store" href="/pt/guias/integracoes/e-commerce/vtex">
    Sincronize a partir do VTEX
  </Card>

  <Card title="WooCommerce" icon="store" href="/pt/guias/integracoes/e-commerce/woocommerce">
    Sincronize a partir do WooCommerce
  </Card>

  <Card title="API" icon="code" href="/pt/guias/integracoes/e-commerce/api">
    Faça upload de produtos diretamente via API
  </Card>
</CardGroup>

## Vantagens

* Funciona em qualquer canal (WhatsApp, web, Facebook, Instagram, etc.) sem exigir verificação do Meta.
* O agente descreve os produtos e gerencia o carrinho dentro da conversa.
* Não depende de webviews ou links externos.
* Sem necessidade de abrir links externos; todas as informações do catálogo são entregues diretamente no chat.
* Você pode pesquisar produtos, ver detalhes, adicionar ao carrinho e concluir a compra sem sair do chat.

## Fluxo de compra

<Steps>
  <Step title="Pesquisar produtos">
    O usuário solicita um produto e o agente pesquisa no catálogo.
  </Step>

  <Step title="Ver detalhes">
    O agente descreve o produto com preço, estoque e características.
  </Step>

  <Step title="Adicionar ao carrinho">
    O usuário indica quais produtos quer e o agente os adiciona ao carrinho.
  </Step>

  <Step title="Concluir a compra">
    O agente recupera o resumo do carrinho e direciona o usuário para o fluxo de pagamento.
  </Step>
</Steps>

## Instalação

<Steps>
  <Step title="Criar um fluxo">
    Crie uma nova fluxo para o fluxo de e-commerce. Se for a primeira vez, veja o guia [Seu primeiro workflow](/pt/guias/primeiros-passos/seu-primeiro-workflow).
  </Step>

  <Step title="Configurar o nó de Agente de IA">
    Conecte o fluxo com um [nó de Agente de IA](/pt/guias/agentes-ia). Na configuração do nó, importe o MCP do **Jelou Shop** pelo [Marketplace de Integrações](/pt/guias/integracoes/integracoes) para habilitar as ferramentas de e-commerce.

    <Frame>
      <img src="https://mintcdn.com/jelouai/HiydMYZzhF4lkFia/assets/images/integraciones/e-commerce/jelou-shop-mcp.png?fit=max&auto=format&n=HiydMYZzhF4lkFia&q=85&s=4a43d0ec3c60b01926b33a6e9b7d9944" alt="Importe o MCP do Jelou Shop pelo nó de Agente de IA" width="548" height="286" data-path="assets/images/integraciones/e-commerce/jelou-shop-mcp.png" />
    </Frame>

    <Tip>
      Se você conectou sua loja pelo Shopify ou WooCommerce, o MCP do Jelou Shop é incluído automaticamente com a integração. Você só precisa importá-lo manualmente se fez upload de produtos via API.
    </Tip>

    Em seguida, configure o seguinte prompt:

    <Accordion title="Ver prompt">
      ```
      ## 🎯 Papel
      Você é um agente de eCommerce amigável e visual (use ícones). Você guia o usuário em sua experiência de compra até que ele solicite: um assessor humano, sair ou pagar.

      ## 🧰 Ferramentas
      - Pesquisar produtos, categorias, promoções → **search_products**
      - Adicionar produto ao carrinho → **upsert_product_to_cart**
      - Remover produto do carrinho → **remove_product_from_cart**
      - Ver detalhe do produto → **get_product_detail**
      - Limpar carrinho → **clean_cart**
      - Pagamento / Checkout → **get_and_clear_cart** (se o carrinho estiver vazio, informe e ofereça pesquisar produtos)

      ## 📏 Regras
      - Nunca invente preços, promoções ou benefícios.
      - Nunca mostre erros técnicos ou nomes de ferramentas ao usuário.
      - Use ferramentas em vez de assumir informações.

      ## Pedido bem-sucedido
      Se receber uma mensagem indicando "Seu pedido foi realizado com sucesso" com:
        Texto: ✅ Pedido confirmado!\n💰 Total a pagar: $xx
        Botões: 💳 Ir para pagamento, 🔍 Adicionar mais, 🛒 Ver meu carrinho

      ## 🧩 Conclusão
      - Assessor humano → end_function: { "flow": "advisor" }
      - Sair → end_function: { "flow": "exit" }
      - Pagamento → Execute **get_and_clear_cart**. Se bem-sucedido → end_function: { "flow": "payment", "total": [total], "cart": [detail] }

      Sempre execute end_function com: { "output_schema": "<json>" }
      ```
    </Accordion>

    Configure as seguintes ferramentas:

    | Ferramenta                      | Descrição                                        | Pausar |
    | ------------------------------- | ------------------------------------------------ | ------ |
    | Pesquisar produtos              | Pesquisar produtos no catálogo                   |        |
    | Detalhe do produto              | Obter informações detalhadas sobre um produto    |        |
    | Ver carrinho                    | Obter o conteúdo atual do carrinho               |        |
    | Adicionar/atualizar no carrinho | Adicionar um produto ou atualizar sua quantidade |        |
    | Remover do carrinho             | Remover um produto específico do carrinho        |        |
    | Limpar carrinho                 | Remover todos os produtos do carrinho            |        |
    | Obter e limpar carrinho         | Obter o carrinho e limpá-lo (checkout)           |        |

    <Tip>
      Essas ferramentas aceitam parâmetros opcionais:

      * **search\_products**: `category`, `branchCode`, `per_page` (1-20, padrão 5), `search_mode` (`semantic`|`ilike`).
      * **remove\_product\_from\_cart**: `variation_id` para produtos com variantes.
      * **get\_and\_clear\_cart**: `debit_stock` para debitar estoque. Retorna `cart_id` para restaurar o carrinho depois.
      * **get\_and\_clear\_cart**: `use_external_checkout` para que o pagamento seja concluído na loja original em vez do fluxo de pagamento do Jelou. Disponível apenas se você conectou sua loja com [Shopify](/pt/guias/integracoes/e-commerce/shopify) ou [WooCommerce](/pt/guias/integracoes/e-commerce/woocommerce). A resposta inclui `checkout_url` com o link para o checkout da loja.
      * Várias ferramentas aceitam `cart_id` para restaurar um carrinho de uma compra anterior.
    </Tip>
  </Step>

  <Step title="Acessar informações do carrinho">
    Você pode obter os dados do carrinho a qualquer momento usando:

    ```javascript theme={null}
    const cartData = $memory.getJson("cartData");
    ```

    O objeto `cartData` contém a seguinte estrutura:

    ```json theme={null}
    {
      "data": [
        { "product_name": "Fogão Murcia 5 Bocas", "sku": "whcwr0rttl", "quantity": 1, "price": "908.00", "discount_value": 908, "tax_rate": 15 },
        { "product_name": "Camiseta azul claro", "sku": "vj6ybab6e1", "quantity": 2, "price": "35.00", "discount_value": 70, "tax_rate": 15 }
      ],
      "total": 978,
      "subTotal": 850.43,
      "tax": 127.57,
      "tax_value": 0.15,
      "tax_breakdown": [
        { "rate": 15, "label": "IVA 15%", "amount": 127.57 }
      ]
    }
    ```

    | Campo             | Descrição                                         |
    | ----------------- | ------------------------------------------------- |
    | `data`            | Array com os produtos do carrinho                 |
    | `data[].tax_rate` | Taxa de imposto aplicada ao produto (porcentagem) |
    | `total`           | Total do carrinho (com impostos)                  |
    | `subTotal`        | Subtotal do carrinho (sem impostos)               |
    | `tax`             | Valor dos impostos                                |
    | `tax_value`       | Taxa de imposto da loja                           |
    | `tax_breakdown`   | Detalhamento de impostos agrupado por taxa        |
  </Step>
</Steps>
