Rapls AI Chatbot Pro Manual

Rapls AI Chatbot Manual (Pro Edition)

Version 1.3.7 | PHP 7.4+ | WordPress 5.8+
The Pro edition includes all Free features plus the advanced capabilities documented below.
For settings available in the Free version, please refer to the Free Manual.

Pro Settings Location
All Pro settings are found under AI Chatbot → Pro Settings in the WordPress admin menu. The Pro Settings page is organized into 6 groups (tabs) with a total of 32 sub-tabs.

Group 1: CUSTOMER

Customer-facing settings that control how visitors interact with the chatbot. This group contains 6 sub-tabs: Lead Capture, Offline, Conversion, UI, Badge Icon, and Footer & CSS.

Lead Capture

Collect visitor information (name, email, phone, company) before or during a chat session. Lead data is stored in the wp_aichat_leads database table and can be exported as CSV or JSON. Optional email notifications send captured leads to your team in real time.

Lead Capture Enabled

Master toggle to activate the lead capture form. When enabled, a form is displayed to the visitor based on the “Lead Form Required” setting.

SettingKeyDefaultDescription
Lead Capture Enabledlead_capture_enabledDisabledShow/hide the lead form to visitors
Lead Form Requiredlead_form_requiredRequiredIf required, the visitor must submit the form before chatting. If optional, they may skip.
Form Titlelead_form_titleBefore we startHeading displayed at the top of the form
Form Descriptionlead_form_descriptionPlease provide your informationSubtext below the form title

Capture Fields

Toggle which fields appear on the lead capture form. Each field can be individually enabled or disabled.

FieldKeyDefault
Namelead_fields_nameEnabled
Emaillead_fields_emailEnabled
Phonelead_fields_phoneDisabled
Companylead_fields_companyDisabled
Custom Fieldslead_custom_fieldsEmpty

Custom Fields

Define additional fields beyond the standard name/email/phone/company. Custom fields are stored in the custom_fields JSON column of the leads table.

Example: "Department", "Budget Range", "How did you hear about us?"

Lead Notification

SettingKeyDefaultDescription
Notification Emaillead_notification_emailAdmin emailEmail address to receive lead notifications
Notification Methodlead_notification_methodEmailOptions: Email, Webhook, or Both

Lead Export

Export collected leads from the Leads page in CSV or JSON format. Date range filters are available.

Tip: Set “Lead Form Required” to “Optional” if you want to minimize friction. Visitors who are genuinely interested will still fill in the form, while casual browsers can chat freely.
Warning: Make sure your notification email address is valid and monitored. If using webhook notifications, configure the Webhook integration first.

How to Configure Lead Capture:

  1. Go to AI Chatbot → Pro Settings → CUSTOMER → Lead Capture
  2. Enable “Lead Capture Enabled”
  3. Choose whether the form is required or optional
  4. Customize the form title and description
  5. Enable the fields you want to collect (name, email, phone, company)
  6. Optionally add custom fields
  7. Set your notification email address
  8. Save settings

Offline Messages

When business hours are over or the chatbot is in “offline” mode, visitors can leave a message through an offline form instead of chatting with the AI. Messages are stored and can be forwarded via email or webhook.

SettingKeyDefaultDescription
Offline Enabledoffline_enabledDisabledEnable the offline message form
Offline Messageoffline_messageWe are currently offline. Please leave a message.Message shown to visitors when offline
Form Titleoffline_form_titleLeave a MessageTitle of the offline form
Notification Enabledoffline_notification_enabledEnabledSend email notification when a message is received
Notification Emailoffline_notification_emailAdmin emailRecipient email for offline messages
Notification Methodoffline_notification_methodEmailEmail, Webhook, or Both
Handoff Keywordsoffline_handoff_keywordsEmptyKeywords that trigger the offline form even during business hours
Tip: Combine Offline Messages with Business Hours to automatically switch between AI chat (during hours) and the offline form (after hours).

How to Configure:

  1. Go to AI Chatbot → Pro Settings → CUSTOMER → Offline
  2. Enable “Offline Enabled”
  3. Customize the offline message and form title
  4. Enable notifications and set the recipient email
  5. Optionally configure Business Hours to automate the switch
  6. Save settings

Conversion Tracking

Track when chatbot interactions lead to desired outcomes such as page visits, form submissions, or button clicks. Conversion data appears in the Analytics dashboard.

SettingKeyDefaultDescription
Conversion Tracking Enabledconversion_enabledDisabledMaster toggle for conversion tracking
Goal URL Patternsconversion_goal_urlsEmptyURL patterns that count as conversions (one per line, supports wildcards)
Success Messageconversion_success_messageThank you!Message shown when a conversion is recorded
Form Submit Trackingconversion_form_trackingDisabledTrack form submissions on the page
Button Click Trackingconversion_button_trackingDisabledTrack specific button clicks
Custom Eventsconversion_custom_eventsEmptyDefine custom JavaScript events to track

Example: Goal URL Patterns

/thank-you/*
/order-complete/
/contact/success/
/download/*
How it works: After a visitor chats with the bot, if they navigate to a URL matching any goal pattern within the same session, a conversion is recorded. The conversion is linked to the conversation for attribution analysis.

How to Configure:

  1. Go to AI Chatbot → Pro Settings → CUSTOMER → Conversion
  2. Enable “Conversion Tracking Enabled”
  3. Enter goal URL patterns, one per line (wildcards supported)
  4. Optionally enable form/button tracking
  5. Save settings
  6. View conversion data in AI Chatbot → Analytics

UI Customization

Customize the visual appearance and behavior of the chatbot widget beyond the standard theme settings available in the Free version.

SettingKeyDefaultDescription
Welcome Screenwelcome_screen_enabledDisabledShow a welcome screen when the widget first opens
Welcome Titlewelcome_screen_titleWelcome!Title text on the welcome screen
Welcome Messagewelcome_screen_messageHow can we help you today?Body text on the welcome screen
Response Delayresponse_delay0 (ms)Artificial delay before displaying AI response (0-5000ms). Makes responses feel more natural.
Notification Soundnotification_sound_enabledDisabledPlay a sound when a new message arrives
Tooltiptooltip_textEmptyText shown as a tooltip near the chat badge
Fullscreen Modefullscreen_enabledDisabledAllow users to expand the chatbot to fullscreen
Custom Fontcustom_fontSystem defaultGoogle Fonts family name to use in the chatbot widget
Seasonal Themeseasonal_themeNoneApply a seasonal decorative overlay (Christmas, Halloween, etc.)
Tip: A response delay of 500-1500ms can make the chatbot feel more human. Too long and users get impatient; too short and it feels robotic.

Badge Icon

Customize the floating chat badge icon that appears on your site. Choose from emoji, preset icons, or upload a custom image.

SettingKeyDefaultDescription
Icon Typebadge_icon_typeEmojiChoose: Emoji, Preset icon, or Custom image
Preset Selectionbadge_icon_presetchat-dotsSelect from built-in icon presets
Custom Imagebadge_icon_imageEmptyUpload a custom image (recommended: 64x64px PNG)
Positionbadge_positionBottom RightChoose corner: bottom-right, bottom-left, top-right, top-left
Animationbadge_animationNoneBadge animation: bounce, pulse, shake, or none
Tip: Use a custom image that matches your brand. A 64x64px transparent PNG works best. Larger images are automatically resized.

Add a custom branded footer to the chatbot widget and inject custom CSS to fine-tune its appearance.

As of v1.5.6, the Free edition no longer shows a “Powered by Rapls AI Chatbot” footer by default. The footer area is now blank for all users. Pro gives you the ability to add your own custom footer — your brand, a disclaimer, a link, or any text or HTML you choose.

SettingKeyDefaultDescription
Custom Footercustom_footer_textEmptyAdd your own branded text or HTML to the chatbot footer area (e.g. company name, disclaimer, or link)
Custom CSS Enabledcustom_css_enabledDisabledEnable custom CSS injection
Custom CSScustom_cssEmptyCSS code to inject into the chatbot widget

Custom CSS Examples:

/* Change the chat header background */
.wpaic-chat-header {
    background: linear-gradient(135deg, #667eea, #764ba2) !important;
}

/* Make the chat bubble rounder */
.wpaic-message-bubble {
    border-radius: 20px !important;
}

/* Increase chat font size */
.wpaic-chat-messages {
    font-size: 16px !important;
}

/* Hide the avatar */
.wpaic-bot-avatar {
    display: none !important;
}

/* Custom scrollbar */
.wpaic-chat-messages::-webkit-scrollbar {
    width: 6px;
}
.wpaic-chat-messages::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}
Warning: Test custom CSS thoroughly. Overly aggressive selectors with !important may conflict with theme styles. Always preview in both desktop and mobile views.

Group 2: AI

AI-powered features that enhance the chatbot’s intelligence and response quality. This group contains 4 sub-tabs.

AI Enhancement

Toggle and configure AI-powered features that enhance the chat experience beyond basic Q&A.

SettingKeyDefaultDescription
Related Suggestionssuggestions_enabledDisabledShow AI-generated follow-up question suggestions after each response
Autocompleteautocomplete_enabledDisabledSuggest completions as the user types in the input field
Regenerateregenerate_enabledDisabledAllow users to regenerate the last AI response
Sentiment Analysissentiment_enabledDisabledAnalyze user sentiment (positive/negative/neutral) for analytics
Context Memorycontext_memory_enabledDisabledRemember user context across sessions
Memory Retention (days)context_memory_days30How long to retain cross-session memory
Multimodal (Image Upload)multimodal_enabledDisabledAllow users to upload images for AI analysis
Max Image Sizemultimodal_max_size5 MBMaximum file size for uploaded images
Allowed Formatsmultimodal_formatsjpg, png, gif, webpAccepted image file types
File Uploadfile_upload_enabledDisabledAllow document uploads (PDF, DOCX, TXT)
File Max Sizefile_upload_max_size10 MBMaximum file size for document uploads
File Typesfile_upload_typespdf, docx, txt, csvAccepted document types
Voice Input (STT)voice_input_enabledDisabledEnable microphone button for speech-to-text
Text-to-Speech (TTS)tts_enabledDisabledRead AI responses aloud
AI Content Generationai_content_enabledDisabledEnable the AI content editor sidebar in post editor
Context Memory: When enabled, the plugin stores a summary of each conversation in the wp_aichat_user_context table. On returning visits, this context is included in the system prompt so the AI can reference past interactions.
Tip: Multimodal requires an AI provider that supports vision (OpenAI GPT-4o, Claude 3+, or Gemini Pro Vision). Make sure your selected model supports image input.

AI Prompts

Create and manage prompt templates that control how the AI responds. Templates allow you to define different response styles, tones, and instructions without modifying the system prompt directly.

SettingKeyDefaultDescription
Prompt Templates Enabledtemplates_enabledDisabledEnable the prompt template system
Active Templateactive_templateNoneSelect which template is currently active
System Prompttemplate_system_promptEmptyOverride the main system prompt when template is active
Context Instructionstemplate_contextEmptyAdditional context instructions appended to the prompt
Response Formattemplate_formatDefaultPreferred response format (paragraph, bullet points, concise, detailed)
Tonetemplate_toneProfessionalResponse tone: Professional, Friendly, Casual, Formal
Language-Specific Promptstemplate_language_promptsEmptyDefine different prompts per detected language

Example: Customer Support Template

System Prompt:
You are a helpful customer support agent for [Company Name].
Always be polite and professional. If you don't know the answer,
suggest contacting [email protected].

Context Instructions:
- Check the knowledge base first before generating answers
- Include relevant links when available
- Keep responses under 200 words

Response Format: Bullet Points
Tone: Friendly
Tip: Create multiple templates for different use cases (sales, support, FAQ) and switch between them as needed. Use Dynamic Variables like {site_name} and {business_hours} in your templates.

External Learning

Import knowledge from external sources to expand the chatbot’s knowledge base beyond your WordPress site content.

SettingKeyDefaultDescription
External Learning Enabledexternal_learning_enabledDisabledEnable importing from external sources
Import Sourcesexternal_sourcesEmptyURLs or data sources to import from
Auto-Update Frequencyexternal_update_frequencyWeeklyHow often to re-import external data
Data Mappingexternal_data_mappingAutoHow to map external data fields to knowledge entries

Test Mode

Enable a test environment for the chatbot that only affects specific users, allowing you to try new settings without impacting live visitors.

SettingKeyDefaultDescription
Test Mode Enabledtest_mode_enabledDisabledActivate test mode
Test User Identificationtest_user_idLogged-in adminsWho sees the test version (logged-in admins, specific IPs, or URL parameter)
Debug Logtest_debug_logDisabledLog detailed API requests/responses for debugging
Response Simulationtest_simulationDisabledReturn mock responses instead of calling the AI API (saves API costs during testing)
Tip: Use test mode when changing AI providers or models. You can validate response quality with test users before rolling the change out to all visitors.
Warning: Debug logging can generate large log files. Disable it when you are done testing, and do not leave it on in production.

Group 3: OPERATIONS

Operational settings that control how the chatbot functions in your business workflows. This group contains 7 sub-tabs.

Business Hours

Define your organization’s operating hours. When outside business hours, the chatbot can show a different message, switch to offline mode, or disable AI responses entirely.

SettingKeyDefaultDescription
Business Hours Enabledbusiness_hours_enabledDisabledEnable business hours restrictions
Timezonebusiness_hours_timezoneWordPress timezoneTimezone for schedule calculations
After-Hours Messagebusiness_hours_messageWe are currently outside business hours.Message shown to visitors outside hours
Holiday Mode Enabledholidays_enabledDisabledEnable holiday schedule
Holiday Listholidays_listEmptyList of holiday dates (YYYY-MM-DD format, one per line)
Holiday Messageholidays_messageWe are closed for a holiday.Message shown during holidays

Weekly Schedule

Set opening and closing times for each day of the week. Each day can be individually enabled/disabled.

Example: Complete Business Hours Configuration

Timezone: America/New_York

Monday:    09:00 - 18:00
Tuesday:   09:00 - 18:00
Wednesday: 09:00 - 18:00
Thursday:  09:00 - 18:00
Friday:    09:00 - 17:00
Saturday:  10:00 - 14:00
Sunday:    Closed

Holidays:
2026-01-01  (New Year's Day)
2026-07-04  (Independence Day)
2026-12-25  (Christmas Day)
2026-12-31  (New Year's Eve)
Tip: Combine Business Hours with Offline Messages for a seamless experience. During hours, the AI chatbot responds; after hours, visitors see the offline form.

Handoff

Enable human handoff so that a live operator can take over a conversation from the AI. This is essential for complex queries that the AI cannot resolve.

SettingKeyDefaultDescription
Handoff Enabledhandoff_enabledDisabledEnable human handoff capability
Trigger Keywordshandoff_keywordshuman, agent, operator, speak to someoneWords that trigger handoff (comma-separated)
Auto-Detecthandoff_auto_detectDisabledAI automatically detects when a human is needed (based on frustration/complexity)
Notification Emailhandoff_emailAdmin emailEmail to notify when handoff is triggered
Handoff Messagehandoff_messageI’m connecting you with a human agent. Please wait.Message shown to the visitor
Notification Methodhandoff_notification_methodEmailEmail, Webhook, Slack, or combination
Slack URLhandoff_slack_urlEmptySlack Incoming Webhook URL for handoff alerts
Operator Messagehandoff_operator_messageEmptyInternal note shown to the operator when they take over

Operator Mode: Step-by-Step Handoff Process

  1. Trigger: The visitor types a handoff keyword (e.g., “speak to a human”) or the AI detects frustration.
  2. Notification: The system sends an alert via email, Slack, or webhook to notify the operator team.
  3. Operator Login: An operator logs into WordPress and navigates to AI Chatbot → Conversations.
  4. Find Conversation: Look for conversations with the “Handoff” status indicator.
  5. Take Over: Click on the conversation and switch to “Operator Mode.” The AI is paused for this conversation.
  6. Chat Directly: The operator types responses directly to the visitor in real time.
  7. Close or Resume AI: When done, the operator can close the conversation or resume AI mode.
Pro Feature: Operator mode uses the answer templates system. Operators can insert pre-written responses with Dynamic Variables for faster replies.
Warning: If using Slack notifications, configure the Slack integration first. The Slack URL must be a valid Incoming Webhook URL.

AI Forms

Create interactive forms within the chatbot widget. AI Forms allow visitors to submit structured data (quotes, surveys, applications) without leaving the chat interface.

SettingKeyDefaultDescription
AI Forms Enabledai_forms_enabledDisabledEnable the AI Forms builder
Template Galleryai_forms_templatesBuilt-in templatesPre-built form templates

Each form consists of:

  • Title — displayed at the top of the form
  • Description — explains the purpose of the form
  • Fields — text, number, select, checkbox, textarea, date, email, phone
  • Submit Button — customizable label
  • Notification — email/webhook alert on submission

Example: Quote Calculator Form

{
    "title": "Get a Quick Quote",
    "description": "Fill in the details and we'll calculate your estimate.",
    "fields": [
        {
            "type": "select",
            "label": "Service Type",
            "options": ["Web Design", "SEO", "Content Writing", "Social Media"],
            "required": true
        },
        {
            "type": "select",
            "label": "Budget Range",
            "options": ["$500-$1000", "$1000-$5000", "$5000-$10000", "$10000+"],
            "required": true
        },
        {
            "type": "textarea",
            "label": "Project Description",
            "placeholder": "Tell us about your project...",
            "required": false
        },
        {
            "type": "email",
            "label": "Email Address",
            "required": true
        },
        {
            "type": "text",
            "label": "Company Name",
            "required": false
        }
    ],
    "submit_label": "Get My Quote",
    "notification_email": "[email protected]"
}
Tip: Use AI Forms for use cases like quote requests, support ticket creation, feedback surveys, and booking requests. The form data is sent via webhook so you can integrate with any CRM or ticketing system.

Moderation

Content moderation and access control settings to keep conversations safe and prevent abuse.

SettingKeyDefaultDescription
Banned Words Enabledbanned_words_enabledDisabledFilter messages containing banned words
Banned Words Listbanned_words_listEmptyOne word/phrase per line
Banned Word Messagebanned_words_messageYour message contains inappropriate content.Shown when a banned word is detected
IP Blocking Enabledip_blocking_enabledDisabledBlock specific IP addresses from using the chatbot
Blocked IPsblocked_ipsEmptyOne IP per line. Supports CIDR notation (e.g., 192.168.1.0/24)
IP Block Messageip_block_messageAccess denied.Message shown to blocked IPs
Burst Rate Limitrate_limit_burst5 per minuteMaximum messages per minute per user
Sustained Rate Limitrate_limit_sustained60 per hourMaximum messages per hour per user
Spam Detectionspam_detection_enabledDisabledAI-powered spam message detection
PII Maskingpii_masking_enabledDisabledAutomatically mask personal data (credit cards, SSN, etc.) in stored messages
Country Blockingcountry_blocking_enabledDisabledBlock or allow access by country (requires GeoIP)
IP Whitelistip_whitelistEmptyIPs that bypass all moderation checks
Warning: PII masking is applied before storing messages. Once masked, the original data cannot be recovered. Test your masking rules carefully in Test Mode before enabling in production.

Actions

Define custom actions that are triggered when specific keywords or patterns are detected in user messages. Actions can redirect users, display information, or fire webhooks.

SettingKeyDefaultDescription
Action Nameactions[].nameDescriptive name for the action
Trigger Keywordsactions[].keywordsWords or phrases that trigger this action
Action Typeactions[].typeType: redirect, display_message, webhook, show_form
Action Configactions[].configType-specific configuration (URL, message text, etc.)

Scenarios

Build multi-step guided conversation flows (wizards). Scenarios guide visitors through a structured decision tree with predefined questions and answers.

SettingKeyDefaultDescription
Scenarios Enabledscenarios_enabledDisabledEnable the scenario system

Each scenario consists of:

  • Name — identifier for the scenario
  • Trigger Conditions — when to start the scenario (keyword, URL, time-based)
  • Guide Steps — ordered list of questions with response options
  • Completion Action — what happens when the scenario ends (redirect, webhook, message)

Example: Troubleshooting Wizard Scenario

{
    "name": "Printer Troubleshooting",
    "trigger": {
        "type": "keyword",
        "value": "printer problem, printer not working, can't print"
    },
    "steps": [
        {
            "message": "I can help you troubleshoot your printer. Is it a:",
            "options": [
                {"label": "Wireless printer", "next": 1},
                {"label": "USB printer", "next": 2}
            ]
        },
        {
            "message": "Is your wireless printer connected to WiFi?",
            "options": [
                {"label": "Yes, but still not printing", "next": 3},
                {"label": "No, it won't connect", "next": 4}
            ]
        },
        {
            "message": "Is the USB cable securely connected?",
            "options": [
                {"label": "Yes", "next": 3},
                {"label": "I'll check and reconnect", "action": "end",
                 "message": "Please reconnect the USB cable and try again. If the issue persists, click here to chat again."}
            ]
        },
        {
            "message": "Let's try restarting the print spooler. Go to Services > Print Spooler > Restart. Did that fix it?",
            "options": [
                {"label": "Yes, it works now!", "action": "end",
                 "message": "Great! Glad I could help. Is there anything else?"},
                {"label": "No, still not working", "action": "handoff",
                 "message": "Let me connect you with a support agent."}
            ]
        },
        {
            "message": "Try these steps:\n1. Restart your router\n2. Restart the printer\n3. Reconnect to WiFi\nDid that resolve the issue?",
            "options": [
                {"label": "Yes!", "action": "end",
                 "message": "Wonderful! Happy printing!"},
                {"label": "No", "action": "handoff",
                 "message": "Let me connect you with a support agent who can help further."}
            ]
        }
    ]
}
Tip: Scenarios are ideal for common support flows, onboarding wizards, and product selection guides. They reduce AI API usage since the responses are predefined.

Multiple Chatbots

Run multiple chatbot instances with different configurations on different pages. Each bot can have its own AI model, system prompt, and appearance.

SettingKeyDefaultDescription
Multi-Bot Enabledmulti_bot_enabledDisabledEnable multiple chatbot instances
Routing Methodmulti_bot_routingPage-basedRound Robin, Intent-based, Random, or Page-based
Operator Modeoperator_mode_enabledDisabledEnable operator (human agent) mode for live chat

Each bot is configured with:

  • Bot Name — display name in the chat header
  • AI Model — which AI model to use
  • Page Assignment — which pages this bot appears on (URL patterns)
  • System Prompt — custom instructions for this bot

Example: Sales Bot + Support Bot

Bot 1: Sales Assistant
  - Model: GPT-4o
  - Pages: /products/*, /pricing/, /demo/
  - Prompt: "You are a sales assistant. Help visitors understand
    our products, answer pricing questions, and guide them toward
    a purchase. Be enthusiastic and highlight key benefits."

Bot 2: Technical Support
  - Model: Claude 3.5 Sonnet
  - Pages: /support/*, /docs/*, /faq/
  - Prompt: "You are a technical support agent. Help users solve
    problems step by step. Be patient and precise. Always suggest
    checking the documentation first."

Routing: Page-based (each bot appears only on its assigned pages)
Fallback: Sales Assistant (shown on unassigned pages)
Intent-Based Routing: When using intent routing, the system analyzes the user’s first message and routes to the most appropriate bot. For example, a pricing question goes to the Sales bot, while a bug report goes to the Support bot.

Group 4: INTEGRATIONS

Connect the chatbot with external services and platforms. This group contains 4 sub-tabs.

Webhook

Send real-time event data to external services via HTTP POST webhooks. Useful for integrating with CRMs, ticketing systems, and automation platforms.

SettingKeyDefaultDescription
Webhook Enabledwebhook_enabledDisabledEnable webhook notifications
Webhook URLwebhook_urlEmptyThe endpoint URL to send events to
Webhook Secretwebhook_secretEmptyHMAC secret for payload signature verification
Eventswebhook_eventsAllSelect which events trigger the webhook
Retry Settingswebhook_retry3 retriesNumber of retry attempts on failure

Available Webhook Events:

  • conversation.started — new conversation begins
  • message.sent — user sends a message
  • message.received — AI responds
  • feedback.submitted — user rates a response
  • lead.captured — lead form submitted
  • handoff.requested — human handoff triggered
  • conversion.tracked — conversion goal reached

Webhook Payload Example:

{
    "event": "lead.captured",
    "timestamp": "2026-03-14T10:30:00Z",
    "site_url": "https://example.com",
    "data": {
        "name": "John Doe",
        "email": "[email protected]",
        "phone": "+1-555-0123",
        "company": "Acme Inc",
        "conversation_id": "abc-123",
        "page_url": "/products/enterprise/"
    },
    "signature": "sha256=a1b2c3d4..."
}

Webhook with Zapier / Make (Integromat):

  1. In Zapier: Create a new Zap → Trigger: “Webhooks by Zapier” → “Catch Hook”
  2. Copy the webhook URL provided by Zapier
  3. Paste it into the “Webhook URL” field in Pro Settings
  4. Click “Test Webhook” to send a test payload
  5. In Zapier, map the fields to your desired action (e.g., add to Google Sheets, create HubSpot contact)
  6. For Make: Use the “Custom Webhook” module and follow similar steps
Tip: Set a webhook secret and verify the X-Webhook-Signature header on your receiving end to ensure requests are legitimate.

LINE Messaging API

Connect your chatbot to LINE, the dominant messaging platform in Japan, Thailand, and Taiwan. Visitors can interact with your chatbot through your LINE Official Account.

SettingKeyDefaultDescription
LINE Enabledline_enabledDisabledEnable LINE integration
Channel IDline_channel_idEmptyFrom LINE Developers Console
Channel Secretline_channel_secretEmptyFrom LINE Developers Console
Access Tokenline_access_tokenEmptyLong-lived channel access token
Webhook URLline_webhook_urlAuto-generatedURL to set in LINE Developers Console (read-only, auto-generated)
Rich Menuline_rich_menuDisabledEnable a rich menu for LINE users
Message Templateline_message_templateDefaultLINE message format (text, flex message, carousel)

LINE Messaging API Setup: Step-by-Step

  1. Go to LINE Developers Console and log in
  2. Create a new Provider (or select existing)
  3. Create a new Messaging API Channel
  4. In Channel settings, find:
    • Channel ID — under “Basic settings”
    • Channel Secret — under “Basic settings”
  5. Under “Messaging API” tab, issue a Channel Access Token (long-lived)
  6. Copy these three values into the Pro Settings LINE tab
  7. Copy the auto-generated Webhook URL from Pro Settings
  8. Back in LINE Developers Console, go to “Messaging API” → “Webhook settings”
  9. Paste the Webhook URL and enable “Use webhook”
  10. Disable “Auto-reply messages” in the LINE Official Account Manager (otherwise LINE sends its own responses)
  11. Click “Test Connection” in Pro Settings to verify
Warning: The Channel Secret is sensitive. Never expose it in client-side code. The plugin stores it encrypted in the WordPress database.

Slack & Google Sheets

Send notifications to Slack channels and export conversation data to Google Sheets automatically.

Slack Integration

SettingKeyDefaultDescription
Slack Enabledslack_enabledDisabledEnable Slack notifications
Slack Webhook URLslack_webhook_urlEmptyIncoming Webhook URL from Slack
Slack Channelslack_channelDefaultOverride the default channel (optional)
Message Formatslack_message_formatStandardStandard text or Rich (with blocks/attachments)

Slack Webhook Setup:

  1. Go to Slack API → Your Apps
  2. Click “Create New App” → “From scratch”
  3. Name your app (e.g., “AI Chatbot Alerts”) and select your workspace
  4. Go to “Incoming Webhooks” and toggle it ON
  5. Click “Add New Webhook to Workspace”
  6. Select the channel for notifications (e.g., #chatbot-alerts)
  7. Copy the Webhook URL (starts with https://hooks.slack.com/services/)
  8. Paste it into Pro Settings → Slack & Sheets → Slack Webhook URL
  9. Click “Test” to send a test message to your Slack channel

Google Sheets Integration

SettingKeyDefaultDescription
Google Sheets Enabledgoogle_sheets_enabledDisabledEnable Google Sheets export
Spreadsheet IDgoogle_sheets_idEmptyThe ID from the Google Sheets URL
API Key / Service Accountgoogle_sheets_api_keyEmptyGoogle API key or service account JSON
Sheet Namegoogle_sheets_sheet_nameSheet1Name of the target sheet tab
Auto Exportgoogle_sheets_auto_exportDisabledAutomatically export new data
Export Frequencygoogle_sheets_frequencyDailyHow often to export: Real-time, Hourly, Daily

Google Sheets Integration with Google Apps Script (GAS):

Instead of using the Google Sheets API directly, you can use a GAS Web App as a webhook endpoint. This is simpler and doesn’t require API keys.

Step 1: Create a Google Apps Script

  1. Open your Google Sheet
  2. Go to Extensions → Apps Script
  3. Replace the code with the following:
function doPost(e) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = JSON.parse(e.postData.contents);

  // Add headers if sheet is empty
  if (sheet.getLastRow() === 0) {
    sheet.appendRow([
      'Timestamp', 'Event', 'Name', 'Email',
      'Phone', 'Company', 'Message', 'Page URL',
      'Session ID'
    ]);
  }

  // Extract data based on event type
  var row = [
    new Date().toISOString(),
    data.event || '',
    (data.data && data.data.name) || '',
    (data.data && data.data.email) || '',
    (data.data && data.data.phone) || '',
    (data.data && data.data.company) || '',
    (data.data && data.data.message) || '',
    (data.data && data.data.page_url) || '',
    (data.data && data.data.conversation_id) || ''
  ];

  sheet.appendRow(row);

  return ContentService
    .createTextOutput(JSON.stringify({status: 'ok'}))
    .setMimeType(ContentService.MimeType.JSON);
}

// Required for webhook verification
function doGet(e) {
  return ContentService
    .createTextOutput('Webhook endpoint active')
    .setMimeType(ContentService.MimeType.TEXT);
}

Step 2: Deploy as Web App

  1. Click Deploy → New deployment
  2. Select type: Web app
  3. Execute as: Me
  4. Who has access: Anyone
  5. Click “Deploy” and copy the Web App URL
  6. Paste the URL into Pro Settings → Webhook → Webhook URL
Tip: The GAS approach is free and works well for moderate traffic. For high-volume sites, consider using the direct Google Sheets API with a service account.

Booking

Integrate appointment booking directly into the chatbot. When visitors express interest in booking, the chatbot can display a booking widget from Calendly, Cal.com, or a custom URL.

SettingKeyDefaultDescription
Booking Enabledbooking_enabledDisabledEnable booking integration
Booking Servicebooking_serviceCalendlyChoose: Calendly, Cal.com, or Custom URL
Booking URLbooking_urlEmptyYour booking page URL
Trigger Keywordsbooking_keywordsbook, schedule, appointment, meeting, demoKeywords that trigger the booking widget
Success Messagebooking_success_messageYour booking has been confirmed!Message shown after booking
Widget Displaybooking_widget_displayInlineInline (in chat) or Popup (new window)

Calendly Setup Example:

  1. Create a Calendly account and set up your event types
  2. Copy your Calendly scheduling link (e.g., https://calendly.com/your-name/30min)
  3. Go to Pro Settings → INTEGRATIONS → Booking
  4. Enable Booking and select “Calendly” as the service
  5. Paste your Calendly URL
  6. Customize trigger keywords (default: book, schedule, appointment)
  7. Choose display mode: Inline shows the widget inside the chat, Popup opens a new window
  8. Save settings
How it works: When a visitor types a message containing a trigger keyword (e.g., “I’d like to book a demo”), the chatbot responds with the booking widget embedded in the chat or a link to your booking page.

Group 5: MANAGEMENT

Administrative and management tools for monitoring costs, controlling access, and maintaining your chatbot configuration. This group contains 5 sub-tabs.

Usage & Budget

Monitor AI API costs and set budget alerts to prevent unexpected charges.

SettingKeyDefaultDescription
Cost Displaybudget_cost_displayEnabledShow cost information in the dashboard
Budget Alert Enabledbudget_alert_enabledDisabledEnable email alerts when spending approaches the limit
Budget Cap Enabledbudget_cap_enabledDisabledHard cap: stop AI responses when budget is reached
Monthly Budgetbudget_monthly_limit$100Maximum monthly spend (USD)
Alert Thresholdbudget_alert_threshold80%Percentage at which to send the alert (e.g., 80% of budget)
Notification Emailbudget_notification_emailAdmin emailEmail for budget alerts
Model Breakdownbudget_model_breakdownEnabledShow per-model cost breakdown
CSV Exportbudget_csv_exportEnabledExport cost data as CSV

Budget Alert Setup Example:

  1. Go to Pro Settings → MANAGEMENT → Usage & Budget
  2. Enable “Budget Alert”
  3. Set monthly budget: $50
  4. Set alert threshold: 80% (alert at $40)
  5. Enter notification email
  6. Optionally enable “Budget Cap” to hard-stop AI responses at the limit
  7. Save settings
Warning: When budget cap is enabled and the limit is reached, the chatbot will display a fallback message instead of AI responses. Make sure to set the API Quota Error Message in Free Settings → Chat Settings.

Role Access

Control which WordPress user roles can access different parts of the chatbot admin interface.

SettingKeyDefaultDescription
Role Access Enabledrole_access_enabledDisabledEnable role-based access control

Permission Matrix Example:

CapabilityAdministratorEditorAuthorContributor
View AnalyticsYesYesYesNo
Manage LeadsYesYesNoNo
Edit SettingsYesNoNoNo
View Audit LogYesYesNoNo
Manage KnowledgeYesYesYesNo
View ConversationsYesYesNoNo
Tip: Grant Editors access to Analytics and Leads so your marketing team can monitor performance without needing full admin access.

Backup

Export and import plugin settings, and perform database maintenance tasks.

SettingKeyDefaultDescription
Settings Export (JSON)Download all plugin settings as a JSON file
Settings ImportUpload a previously exported JSON file to restore settings
DB MaintenanceDelete old conversations/messages, optimize tables
Data Retentiondata_retention_days90 daysAuto-delete conversations older than this
Warning: Settings import will overwrite all current settings. Always export a backup before importing. Sensitive keys (API keys) are included in the export file, so handle it securely.

Change History

Track all configuration changes with version history, rollback capability, and an optional approval workflow.

SettingKeyDefaultDescription
Change History Enabledchange_history_enabledDisabledEnable tracking of settings changes
Staging Modestaging_mode_enabledDisabledPreview changes before publishing them live
Approval Workflowapproval_workflow_enabledDisabledRequire approval from an admin before changes go live

Approval Workflow Process:

  1. Submit: An editor saves settings changes. Instead of going live immediately, changes are saved as “Pending.”
  2. Review: An administrator sees the pending changes in the Change History tab with a diff view showing what changed.
  3. Approve/Reject: The admin can approve (changes go live) or reject (changes are discarded) with an optional comment.
  4. Rollback: If approved changes cause issues, any previous version can be restored from the version history.
Tip: Enable Staging Mode on production sites. It lets you preview how settings changes will look before publishing, reducing the risk of accidentally breaking the chatbot for live visitors.

License

Manage your Pro license activation and status.

SettingKeyDefaultDescription
License Statuslicense_statusInactiveCurrent license status (Active / Inactive / Expired)
License Keylicense_keyEmptyEnter your Pro license key
Expiration Datelicense_expiryWhen your license expires

How to Activate:

  1. Purchase a Pro license
  2. Copy the license key from your purchase confirmation email
  3. Go to Pro Settings → MANAGEMENT → License
  4. Paste the license key and click “Activate”
  5. The status should change to “Active”

Group 6: SYSTEM

System-level configuration for performance, security, and infrastructure. This group contains 6 sub-tabs.

Cache

Cache AI responses to reduce API costs and improve response times for frequently asked questions. The cache uses SHA-256 hashing of the user message to identify duplicates.

SettingKeyDefaultDescription
Response Cache Enabledcache_enabledDisabledEnable response caching
Cache TTLcache_ttl24 hoursTime-to-live for cached responses
Cache StatsView cache hit/miss ratio and total cached entries
Clear CachePurge all cached responses
Model-Specific Togglecache_per_modelAll modelsEnable/disable caching per AI model
How caching works: When a user sends a message, the plugin hashes it and checks for a matching cached response. If found (cache hit), the cached response is returned immediately without calling the AI API. The cache_hit column in the messages table tracks whether each response came from cache.
Tip: A 24-hour TTL works well for most sites. Increase it for static content sites; decrease it if your content changes frequently. Clear the cache after updating your knowledge base.

Queue

Manage concurrent AI API requests to prevent overload and ensure fair access during traffic spikes.

SettingKeyDefaultDescription
Queue Enabledqueue_enabledDisabledEnable request queue management
Max Concurrent Requestsqueue_max_concurrent5Maximum simultaneous AI API calls
Logged-in Priorityqueue_login_priorityEnabledGive logged-in users priority in the queue
Timeoutqueue_timeout30 secondsMaximum wait time in queue before timeout
Queue StatusView current queue depth and processing stats
Queue ResetClear stuck requests from the queue
Tip: Set max concurrent requests based on your AI provider’s rate limits. OpenAI allows higher concurrency than Claude for most tiers.

Performance

Monitor and optimize chatbot performance with metrics tracking and batch processing.

SettingKeyDefaultDescription
Performance Monitoringperformance_enabledDisabledEnable performance metrics collection
Batch Processingbatch_enabledDisabledProcess embedding updates in batches
Batch Sizebatch_size10Number of items per batch
Similar Question Cachesimilar_cache_enabledDisabledCache responses for semantically similar questions

Performance Metrics:

  • Average Response Time — time from user message to AI response display
  • Peak Load — maximum concurrent users in the past 24 hours
  • DB Query Time — average database query execution time
  • Cache Hit Ratio — percentage of responses served from cache
  • API Call Frequency — average API calls per hour

Security

Advanced security settings for data protection and access control beyond the basic security settings in the Free version.

SettingKeyDefaultDescription
Security Headerssecurity_headers_enabledDisabledAdd security headers to chatbot API responses
Data Retention Enableddata_retention_enabledDisabledAuto-delete old data based on retention period
Retention Daysdata_retention_days90Delete conversations older than this many days
IP Whitelistsecurity_ip_whitelistEmptyIPs that bypass security checks (admin access)
Country Blockingsecurity_country_blockingDisabledBlock or allow by country
PII Masking Rulespii_masking_rulesDefault patternsRegex patterns for detecting PII (credit cards, SSN, etc.)

Encryption

Encrypt conversation data at rest using AES-256-GCM encryption. This protects stored messages even if the database is compromised.

SettingKeyDefaultDescription
Encryption Enabledencryption_enabledDisabledEnable data encryption at rest
Encryption Methodencryption_methodAES-256-GCMEncryption algorithm (read-only)
Encrypted MessagesCount of encrypted vs unencrypted messages
Bulk EncryptEncrypt all existing unencrypted messages
Bulk DecryptDecrypt all messages (before disabling encryption)
Key RotationGenerate a new encryption key and re-encrypt all data
Encryption TestTest that encryption/decryption works correctly

How to Enable Encryption:

  1. Go to Pro Settings → SYSTEM → Encryption
  2. Click “Encryption Test” to verify your server supports AES-256-GCM
  3. Enable “Encryption Enabled”
  4. Click “Bulk Encrypt” to encrypt existing messages (this may take a while for large databases)
  5. All new messages will be automatically encrypted going forward
Warning: The encryption key is derived from your WordPress AUTH_KEY salt. If you change your WordPress salts, encrypted data will become unreadable. Always bulk-decrypt before changing salts, or keep a backup of the old salts.
Tip: Perform key rotation periodically (e.g., quarterly) as a security best practice. Key rotation re-encrypts all data with a new key.

Security Scan

Run a comprehensive security audit of your chatbot configuration. The scan checks for common misconfigurations and security vulnerabilities.

SettingKeyDefaultDescription
Auto Scansecurity_scan_autoDisabledAutomatically run scans on a schedule
Scan Report ExportExport scan results as a report

What the Security Scan Checks:

CheckSeverityDescription
API Key ExposureCriticalEnsures API keys are not exposed in client-side code
SSL/TLSHighVerifies the site uses HTTPS
Rate LimitingMediumChecks that rate limiting is enabled
reCAPTCHAMediumChecks for bot protection
CSRF ProtectionHighVerifies nonce validation is active
Data RetentionLowChecks if data retention policy is configured
EncryptionMediumChecks if data encryption is enabled
File PermissionsMediumVerifies plugin file permissions are correct
Debug ModeHighWarns if WP_DEBUG is enabled on production
Allowed OriginsMediumReviews the same-origin policy configuration
Tip: Run a security scan after initial setup and after any major configuration change. Address all “Critical” and “High” severity items before going live.

Pro-Only Pages

These admin pages are available only when the Pro plugin is active. In the Free version, they are shown as locked upsell pages.

Site Learning (Crawler)

The Site Learning page manages the content crawler that indexes your WordPress site for RAG (Retrieval-Augmented Generation). The AI uses this indexed content to answer questions about your site.

FeatureDescription
Learning StatusShows enabled/disabled, indexed page count, last crawl date, WooCommerce detection
Embedding StatusProvider info, embedded chunk count with progress bar
Content TypesSelect which post types to index (posts, pages, products, custom types)
ExclusionsExclude specific URLs or content patterns from indexing
Custom FieldsInclude custom field data in the index
Crawl DepthHow deep to follow internal links
Scheduled CrawlAutomatically re-crawl on a schedule (daily, weekly)
Differential CrawlOnly re-index content that changed since the last crawl
Differential Crawl: On subsequent crawls, only new or modified content is re-indexed. This saves processing time and API costs for embedding generation.

Conversations

View and manage all chatbot conversations. The Pro version unlocks the full conversation management interface.

FeatureDescription
Statistics CardsTotal / Active / Closed / Today / Archived / Handoff count
Search & FilterMessage search, status filter, date range
Bulk OperationsSelect and delete, delete all, reset all sessions
ExportCSV / JSON with date filters
Conversation DetailClick to view full message history with timestamps
Operator ModeTake over a conversation for live human chat

Analytics Dashboard

Comprehensive analytics for understanding chatbot performance, user behavior, and ROI.

FeatureDescription
Period Selection7 / 30 / 90 days
PDF / Print ExportExport the full analytics report as PDF or print
Statistics CardsConversations / Messages / Avg messages per conversation / Satisfaction / Cost / AI Quality Score / Bounce Rate
Conversation Drop-offDistribution chart showing where users leave conversations
Daily ConversationsLine chart of conversation volume over time
Hourly DistributionHeatmap of chat activity by hour
FAQ RankingMost frequently asked questions table
Top PagesPages where chatbot is used most
Device StatisticsDesktop / Mobile / Tablet breakdown
Country StatisticsGeographic distribution of users
Cost AnalysisDaily cost trend line + per-model breakdown
Feedback AnalysisSatisfaction bar, daily feedback trend, summary cards
Knowledge GapsQuestions the AI could not answer well
Low-Rated FeedbackResponses that received negative feedback
Tip: Review Knowledge Gaps weekly and add answers to your Knowledge Base. This continuously improves the chatbot’s accuracy. Use the “FAQ Auto-Generation” feature to draft knowledge entries from gaps automatically.

Leads

Manage all captured leads from the chatbot’s lead form and offline messages.

FeatureDescription
Search & FilterSearch by name/email/company, date range filter
ExportCSV / JSON export
Statistics CardsTotal / Today / This Week / This Month
Lead TableName / Email / Phone / Company / Type / Conversation Link / Date / Actions
PaginationNavigate through large lead lists

Audit Log

Track all administrative actions performed on the chatbot plugin. The audit log provides an immutable record for compliance and accountability.

FeatureDescription
FilterAction type / Date range / Text search
ExportCSV export of audit records
Log TableDate / Action (severity color-coded) / User / Target / Details
PaginationNavigate through log history

Tracked Actions Include:

  • Settings changes (with before/after values)
  • Knowledge base additions, edits, and deletions
  • Crawl operations (start, complete, error)
  • Data exports and imports
  • User access and permission changes
  • Encryption operations
  • Cache clearing
  • License activation/deactivation

Additional Features

Dynamic Variables

Use dynamic variables in system prompts, templates, and messages to insert real-time data automatically.

VariableOutputDescription
{site_name}Your Site NameWordPress site title
{site_url}https://example.comWordPress site URL
{current_date}2026-03-14Today’s date
{current_time}14:30Current time
{current_day}SaturdayDay of the week
{business_hours}Mon-Fri 9:00-18:00Current business hours schedule
{user_name}JohnLogged-in user’s display name (or “Visitor”)
{user_email}[email protected]Logged-in user’s email
{page_title}Product PageCurrent page title
{page_url}/products/widget/Current page URL
{language}enWordPress locale language code

Example usage in a system prompt:

You are a helpful assistant for {site_name}.
Today is {current_date} ({current_day}).
Our business hours are: {business_hours}.
The customer is currently viewing: {page_title} ({page_url}).

Pro Themes

The Pro edition adds 10 premium themes and dark mode support on top of the 6 Free themes.

ThemeDescription
ModernClean, contemporary design with subtle shadows
GradientColorful gradient header and accents
DarkDark background theme for low-light environments
GlassFrosted glass (glassmorphism) effect
RoundedExtra-rounded corners and soft appearance
OceanBlue-toned aquatic color scheme
SunsetWarm orange and red gradient tones
ForestNatural green color palette
NeonVibrant neon accents on dark background
ElegantSophisticated serif typography with gold accents

Dark Mode: When enabled, dark mode applies an overlay to any theme (Free or Pro). It respects the user’s system preference by default, or can be forced on/off.

Voice Input & Text-to-Speech

Enable voice interaction with the chatbot. Voice input uses the browser’s built-in Web Speech API for speech-to-text, and TTS reads AI responses aloud.

  • Voice Input (STT): A microphone button appears in the input area. Users click to speak, and their words are converted to text. Supports major languages. Requires HTTPS.
  • Text-to-Speech (TTS): A speaker button appears on each AI response. Click to have the response read aloud. Uses the browser’s built-in speech synthesis.
Warning: Voice features require HTTPS and a modern browser. They do not work on HTTP-only sites. Safari and Chrome have the best support for Web Speech API.

AI Tools

Additional AI-powered tools for content management beyond the chatbot itself.

  • AI Content Editor: A sidebar in the WordPress post editor that uses AI to help write, rewrite, summarize, or translate content.
  • Response Edit Suggestions: AI analyzes low-rated chatbot responses and suggests improvements for your knowledge base.
  • FAQ Auto-Generation: Automatically generate FAQ entries from identified knowledge gaps using AI.
  • Similar Question Merge: Detect and merge duplicate or near-duplicate knowledge base entries using word similarity.

Chat Features

Additional chat interaction features available in the Pro edition.

  • Quick Replies: Pre-defined response buttons shown at the start of a conversation or based on context.
  • Chat Bookmarks: Users can bookmark important messages for later reference.
  • Conversation Search: Search within the current conversation history.
  • Conversation Sharing: Generate a shareable link for a conversation.
  • Screen Sharing: Capture a screenshot of the current page and include it in the conversation for visual context.
  • Conversation Summary: AI-generated summary of the conversation available to both the user and operators.

WooCommerce Integration

When WooCommerce is active, the chatbot automatically detects and can index product data. Product information is included in the RAG context for product-related queries.

Product Cards: When the AI recommends a product, it can display a rich product card in the chat with:

  • Product image
  • Product name and price
  • Short description
  • Star rating
  • “Add to Cart” or “View Product” button
How Product Cards Work: The AI provider returns product recommendations with product IDs or slugs. The plugin’s wpaic_chat_response_data filter detects these references and injects rich product card HTML into the response. No special configuration is needed beyond enabling Site Learning with WooCommerce products included.

Setup:

  1. Ensure WooCommerce is installed and products are published
  2. Go to AI Chatbot → Site Learning
  3. Enable learning and include “Products” in the content types
  4. Run a crawl to index your product catalog
  5. The chatbot will now reference products and display cards automatically

Multisite Support

The Pro edition supports WordPress Multisite installations with network-wide settings management.

  • Network-Wide Settings: Configure default settings that apply across all sites in the network.
  • Per-Site Overrides: Individual sites can override network defaults with their own settings.
  • Centralized License: A single Pro license can be activated network-wide.
  • Shared Knowledge: Optionally share knowledge base entries across sites in the network.
タイトルとURLをコピーしました