กลับไปที่แดชบอร์ด

เอกสาร

เรียนรู้วิธีใช้ Asyntai

ฟีเจอร์
การรวบรวมข้อมูลเว็บไซต์ ช่องว่างความรู้ การ์ดสินค้า การ์ดสินค้าแบบไดนามิก Dynamic Images บริบทผู้ใช้ การติดตามแบบเรียลไทม์ Human Takeover การยกระดับ การแจ้งเตือน AI รายงานประจำวัน ฟีดข้อมูลแบบเรียลไทม์ ฟีดข้อมูลแบบเรียลไทม์ Max สมาชิกในทีม การลงชื่อเข้าใช้ครั้งเดียว รวมรูปภาพ การมองเห็นรูปภาพ วิดเจ็ตแปลภาษา การปรับให้เข้ากับท้องถิ่น ลูกค้าเป้าหมาย การจับลูกค้าเป้าหมายอัจฉริยะ ตั๋วสนับสนุน การจอง การฝัง ยกเว้นหน้า IP ที่ถูกบล็อก โมเดลที่ฉลาดกว่า เปิดใช้งานการคิดวิเคราะห์ คำแนะนำการตอบกลับ ข้อความติดตามผล เสียงเป็นข้อความ ดาวน์โหลดบันทึกการสนทนา แชทแบบฝังตัว

Set Up Real-Time Data Feed Max on PrestaShop

Three ways to expose PrestaShop products as a JSON feed

Back to Real-Time Data Feed Max
แผน Pro

What Your Feed Should Look Like

Real-Time Data Feed Max accepts any public URL returning JSON or plain text. The AI reads whatever you give it — products, services, bookable slots, property listings, menus, opening hours, anything — and uses it to answer visitor questions. There is no required shape or field name.

The one exception is Dynamic Product Cards. If you want matching items to render as visual cards in the chat, use these specific field names: name, price, description, image_url, button_link, in_stock.

Example — products (triggers Dynamic Product Cards)

{
  "products": [
    {
      "name": "Wireless Headphones Pro",
      "price": "$149.99",
      "description": "Premium over-ear wireless headphones with ANC.",
      "image_url": "https://example.com/images/headphones.jpg",
      "button_link": "https://example.com/products/headphones",
      "in_stock": true
    }
  ]
}

Example — services (any shape works)

{
  "services": [
    {
      "service": "Deep tissue massage",
      "duration_minutes": 60,
      "price_from": "$95",
      "therapists_available": ["Anna", "Mark"],
      "booking_link": "https://example.com/book/deep-tissue"
    },
    {
      "service": "Haircut & style",
      "duration_minutes": 45,
      "price_from": "$55",
      "booking_link": "https://example.com/book/haircut"
    }
  ]
}

Example — plain text (works too)

Opening hours: Mon-Fri 9-6, Sat 10-4, closed Sunday.
Delivery: Free over $30, minimum order $15, within 5 miles.
Lunch specials (weekdays only):
- Margherita pizza $12
- Caesar salad $9
- Soup of the day $7

Rule of thumb: Use descriptive field names the AI can interpret (service, duration, price, location, etc.). If Dynamic Product Cards make sense for your business, follow the exact field names above. If they don't, use whatever shape fits your data — the AI still searches it and answers questions correctly.

How PrestaShop Differs

PrestaShop ships with a Webservice feature that can return products as XML or JSON — but it requires a key and usually lives at an authenticated URL. The cleanest path is either a feed module (no code) or a small custom PHP script (full control).

Option 1 — Webservice via a Proxy

PrestaShop's built-in Webservice can return JSON if you enable it and add a key.

1
Enable Webservice PrestaShop admin → Advanced Parameters → Webservice → set Enable PrestaShop's Webservice to Yes.
2
Create a new webservice key Click Add new webservice key → pick a shop → grant GET permission on Products and (if needed) Stock availables, Images, Categories. Save.
3
Test the endpoint The URL will look like https://YOUR_KEY@your-site.com/api/products?output_format=JSON — note the key is part of the URL.
4
Build a small proxy Never paste the key-in-URL form directly into Real-Time Data Feed Max — that would expose your key. Instead, a tiny Cloudflare Worker or Vercel function calls PrestaShop server-side, reshapes the data to our format, and returns clean public JSON.
GET https://your-site.com/api/products?output_format=JSON&display=full&ws_key=YOUR_KEY
// OR via Basic Auth:
Authorization: Basic base64(YOUR_KEY:)

Option 2 — Product Feed Module

If you'd rather skip the API entirely, a PrestaShop Addons module can generate a public JSON feed on a schedule.

  • Advanced Data Feeds
  • Google Merchant XML/CSV Feeds Pro
  • Shopping Flux / Shopping Feed

Configure the module with JSON output, map your PrestaShop fields to our format (name, price, description, image_url, button_link, in_stock), and use the generated feed URL.

Option 3 — Custom PHP Script

A small PHP file dropped into your PrestaShop installation can return your catalog directly — no API keys, no proxy.

<?php
// /modules/aifeed/aifeed.php
require_once(dirname(__FILE__) . '/../../config/config.inc.php');
require_once(dirname(__FILE__) . '/../../init.php');

header('Content-Type: application/json');

$products = Product::getProducts((int)Context::getContext()->language->id, 0, 0, 'id_product', 'ASC');
$out = [];
foreach ($products as $p) {
  $link = new Link();
  $out[] = [
    'name'        => $p['name'],
    'price'       => Tools::displayPrice(Product::getPriceStatic($p['id_product'])),
    'description' => strip_tags($p['description_short']),
    'image_url'   => $link->getImageLink($p['link_rewrite'], Image::getCover($p['id_product'])['id_image'], 'medium_default'),
    'button_link' => $link->getProductLink($p['id_product']),
    'in_stock'    => (bool)StockAvailable::getQuantityAvailableByProduct($p['id_product']),
  ];
}
echo json_encode(['products' => $out]);

Feed URL: https://your-site.com/modules/aifeed/aifeed.php

ความปลอดภัย: A script at /modules/... will be publicly accessible. Make sure it's read-only — the example above only reads data. Never accept query parameters that modify anything.

การแก้ไขปัญหา

I see a password page instead of JSON

Your site is in maintenance, staging, or password-protected mode. Real-Time Data Feed Max needs a fully public URL.

Real-Time Data Feed Max says the feed failed

Open the URL in a private browser window. If you don't see JSON, the URL is wrong or the endpoint is down. If you see JSON but we still fail, the response may be missing a Content-Type: application/json header or exceeding the 10,000,000 character limit.

Product cards don't render

Dynamic Product Cards require specific field names (name, price, image_url, button_link, in_stock). If your platform uses different names, reshape the response in a small custom script before exposing it.

Data looks wrong or outdated

The feed auto-refreshes every 24 hours. For immediate updates, click Refresh Now in Real-Time Data Feed Max. For live fields (price, stock), the AI pulls fresh data on every message — so the 24h cycle only affects which items are known, not their current state.

Feed size exceeded

Real-Time Data Feed Max accepts up to 10,000,000 characters (~25,000 items). If you exceed that, trim fields (skip long HTML descriptions), split your catalog, or use the standard Real-Time Data Feed alongside for secondary data.

Still stuck? Start with the simplest option for your platform and verify the URL works in a browser before pasting it into Real-Time Data Feed Max. You can always upgrade to a more advanced option later — only the URL field changes on our side.