CartPulse Pro — Documentation
CartPulse Pro — التوثيق الرسمي
Smart WhatsApp & Email Abandoned Cart Recovery for WooCommerce
استرداد ذكي للسلات المتروكة عبر واتساب والبريد الإلكتروني لـ WooCommerce
1Welcome & Overviewمرحباً ونظرة عامة
CartPulse Pro automatically recovers lost WooCommerce revenue by detecting abandoned carts and sending timely, personalized recovery messages via WhatsApp and Email — without any manual work from you.
CartPulse Pro يسترد تلقائياً الإيرادات المفقودة من WooCommerce عن طريق اكتشاف السلات المتروكة وإرسال رسائل استرداد مخصصة في الوقت المناسب عبر واتساب والبريد الإلكتروني — دون أي تدخل يدوي منك.
2Requirementsالمتطلبات
3Installationالتثبيت
- 1Download the plugin ZIPDownload cartpulse-pro.zip from your purchase receipt email or LemonSqueezy account dashboard.
- 2Upload to WordPressGo to Plugins → Add New → Upload Plugin, select the ZIP file, then click Install Now.
- 3Activate the pluginClick Activate Plugin. Demo data will be pre-loaded automatically so you can explore the dashboard immediately.
- 4Enter your license keyGo to CartPulse Pro → License and enter your LemonSqueezy license key. Click Check License to activate.
- 5Configure settingsGo to CartPulse Pro → Settings and configure your email, WhatsApp, and coupon settings.
- 6Clear demo data & go liveWhen ready, click Clear Demo Data in the dashboard. Your store will now track real abandoned carts!
- 1تنزيل ملف ZIPنزّل cartpulse-pro.zip من بريد إيصال الشراء أو لوحة حساب LemonSqueezy الخاص بك.
- 2الرفع إلى ووردبريساذهب إلى الإضافات ← إضافة جديدة ← رفع إضافة، اختر ملف ZIP، ثم اضغط تثبيت الآن.
- 3تفعيل الإضافةاضغط تفعيل الإضافة. ستُحمّل البيانات التجريبية تلقائياً لتتمكن من استكشاف لوحة التحكم فوراً.
- 4إدخال مفتاح الترخيصاذهب إلى CartPulse Pro ← الترخيص وأدخل مفتاح ترخيص LemonSqueezy. اضغط التحقق من الترخيص.
- 5ضبط الإعداداتاذهب إلى CartPulse Pro ← الإعدادات وأعدّ البريد الإلكتروني وواتساب وإعدادات الكوبون.
- 6مسح البيانات التجريبية والبدءعند الاستعداد، اضغط Clear Demo Data في لوحة التحكم. سيبدأ متجرك الآن بتتبع السلات المتروكة الحقيقية!
4Quick Start Guideدليل البدء السريع
5Features Deep-Diveالمميزات التفصيلية
🎯 Core Recovery Engine
📡 Guest Contact Capture
📱 WhatsApp Features
📧 Email Features
⚡ Performance & Reliability (v1.0.4)
🎯 محرك الاسترداد الأساسي
📡 التقاط بيانات الزوار
📱 مميزات واتساب
⚡ الأداء والموثوقية (v1.0.4)
6How It Worksآلية العمل
CartPulse Pro runs silently in the background using WordPress Cron (every 5 minutes). Here's the complete cart lifecycle:
يعمل CartPulse Pro في الخلفية بهدوء باستخدام WordPress Cron (كل 5 دقائق). إليك دورة حياة السلة الكاملة:
7Settings Guideدليل الإعدادات
General Tab
WhatsApp Tab
Email Tab
Coupons Tab
تبويب عام
8Exit Intent Popupنافذة نية المغادرة
The exit intent popup captures guest emails before they leave your store — your last chance to start a recovery sequence.
نافذة نية المغادرة تلتقط بريد الزوار قبل مغادرة متجرك — فرصتك الأخيرة لبدء تسلسل الاسترداد.
9WhatsApp Setupإعداد واتساب
Option A: Manual Mode (Free — Recommended for Small Stores)
Option B: Automatic Mode via Twilio
- 1Create Twilio AccountSign up at twilio.com and enable the WhatsApp Business API sandbox or production number.
- 2Get CredentialsCopy your Account SID, Auth Token, and From Number (WhatsApp-enabled).
- 3Enter in SettingsGo to CartPulse Pro → Settings → WhatsApp. Set Mode to API (Twilio), enter your credentials.
Option C: Automatic Mode via 360dialog
- 1Create 360dialog AccountSign up at 360dialog.com and connect your WhatsApp Business number.
- 2Get API KeyRetrieve your 360dialog API Key from the partner hub.
- 3Enter in SettingsGo to CartPulse Pro → Settings → WhatsApp. Set Mode to API (360dialog), enter your API key.
الخيار أ: الوضع اليدوي (مجاني — موصى به للمتاجر الصغيرة)
الخيار ب: الوضع التلقائي عبر Twilio
- 1إنشاء حساب Twilioسجّل في twilio.com وفعّل WhatsApp Business API sandbox أو رقم الإنتاج.
- 2الحصول على بيانات الاعتمادانسخ Account SID وAuth Token ورقم المرسل (مفعّل للواتساب).
- 3الإدخال في الإعداداتاذهب إلى CartPulse Pro ← الإعدادات ← واتساب. اضبط الوضع على API (Twilio) وأدخل بيانات الاعتماد.
10Email Setupإعداد البريد الإلكتروني
Step-by-Step Email Configuration
- 1Install WP Mail SMTP (Free)Go to Plugins → Add New → Search "WP Mail SMTP" → Install & Activate.
- 2Connect to Gmail or SMTPUse Gmail (recommended), SendGrid, Mailgun, or any SMTP service. Follow WP Mail SMTP's setup wizard.
- 3Set From Email in CartPulseGo to CartPulse Pro → Settings → Email. Set From Email to exactly match your SMTP sender email.
- 4Send Test EmailClick "Send Test Email" in CartPulse Settings. Check inbox AND spam folder. If it goes to spam, improve SMTP reputation.
إعداد البريد خطوة بخطوة
- 1تثبيت WP Mail SMTP (مجاني)اذهب لـ الإضافات ← إضافة جديدة ← ابحث عن "WP Mail SMTP" ← ثبّت وفعّل.
- 2ربطه بـ Gmail أو SMTPاستخدم Gmail (موصى به) أو SendGrid أو Mailgun أو أي خدمة SMTP. اتبع معالج إعداد WP Mail SMTP.
- 3ضبط البريد المرسل في CartPulseاذهب إلى CartPulse Pro ← الإعدادات ← البريد. اضبط البريد المرسل ليطابق تماماً بريد SMTP.
- 4إرسال بريد اختبارياضغط "إرسال بريد اختباري" في إعدادات CartPulse. تحقق من البريد الوارد والسبام.
11Auto-Couponsالكوبونات التلقائية
CartPulse Pro generates real WooCommerce coupons automatically — each unique, per-customer, and applied instantly when the recovery link is clicked.
ينشئ CartPulse Pro كوبونات WooCommerce حقيقية تلقائياً — كل واحد فريد، مخصص لعميل، ويُطبَّق فوراً عند الضغط على رابط الاسترداد.
12GDPR & UnsubscribeGDPR وإلغاء الاشتراك
hash_equals() — preventing token timing attacks. Invalid tokens are rejected.cartpulse_unsub_[email_hash]). The block persists through plugin updates and database migrations. Cannot be accidentally removed.wp_salt() and unique per email address. No one can unsubscribe another email without the signed token — prevents abuse.hash_equals() — يمنع هجمات التوقيت. الرموز غير الصالحة تُرفض.cartpulse_unsub_[هاش_البريد]). الحظر يستمر عبر تحديثات الإضافة وترحيلات قاعدة البيانات.13Recovery Linksروابط الاسترداد
Every recovery email and WhatsApp message includes a unique, secure one-click recovery link that rebuilds the customer's full cart automatically.
md5(cart_id + created_at + wp_salt()) and compared using hash_equals() — preventing timing attacks. Tampered links are silently rejected.wc_load_cart() natively before restoring contents — eliminating fatal errors completely.كل بريد استرداد ورسالة واتساب تحتوي على رابط استرداد فريد وآمن بنقرة واحدة يعيد بناء سلة العميل الكاملة تلقائياً.
md5(معرف_السلة + created_at + wp_salt()) ويُقارَن باستخدام hash_equals() — يمنع هجمات التوقيت. الروابط المعدّلة تُرفض بصمت.wc_load_cart() الأصيلة قبل استعادة المحتويات — مما يلغي الأخطاء القاتلة تماماً.14Analytics Dashboardلوحة التحليلات
15Message Tokensرموز التخصيص
Use these tokens in your WhatsApp message templates and email subjects to personalize messages dynamically per customer.
| Token | Description | Example Output |
|---|---|---|
| {customer_name} | Full customer name | Ahmed Hassan |
| {first_name} | First name only | Ahmed |
| {cart_value} | Total cart value with currency symbol | $149.99 |
| {cart_items} | Comma-separated list of product names | Wireless Headphones, Laptop Bag |
| {recovery_url} | One-click secure cart recovery link | https://yourstore.com/?cartpulse_recover=42&key=… |
| {coupon_code} | Generated discount coupon code | cp-a3f9b2c1-42 |
| {coupon_discount} | Human-readable discount amount | 15% OFF |
| {store_name} | Your WordPress site name | My Awesome Store |
| {store_url} | Store homepage URL | https://yourstore.com |
استخدم هذه الرموز في قوالب رسائل واتساب وعناوين البريد لتخصيص الرسائل ديناميكياً لكل عميل.
| الرمز | الوصف | مثال على الإخراج |
|---|---|---|
| {customer_name} | اسم العميل الكامل | أحمد حسن |
| {first_name} | الاسم الأول فقط | أحمد |
| {cart_value} | إجمالي قيمة السلة مع رمز العملة | 149.99 ج.م |
| {cart_items} | قائمة أسماء المنتجات مفصولة بفواصل | سماعات لاسلكية، حقيبة لابتوب |
| {recovery_url} | رابط استرداد آمن بنقرة واحدة | https://متجرك.com/?cartpulse_recover=42&key=… |
| {coupon_code} | كود الكوبون المولّد | cp-a3f9b2c1-42 |
| {coupon_discount} | مبلغ الخصم | خصم 15% |
| {store_name} | اسم موقعك في ووردبريس | متجري الرائع |
| {store_url} | رابط الصفحة الرئيسية | https://متجرك.com |
16Troubleshootingحل المشكلات
17Frequently Asked Questionsالأسئلة الشائعة
/wp-content/plugins/cartpulse-pro/templates/email/. You can edit them directly or create override templates in your theme. Arabic templates use the -ar suffix (e.g. reminder-1-ar.php).18Pricing Plansخطط الأسعار
- ✓ Smart abandoned cart detection
- ✓ Email recovery (3-step auto sequence)
- ✓ WhatsApp recovery — manual mode (free, no API needed)
- ✓ WhatsApp API auto mode (Twilio / 360dialog)
- ✓ Auto-generated unique coupons per customer
- ✓ One-click secure recovery links
- ✓ Exit intent popup + checkout blur capture
- ✓ Basic analytics dashboard
- ✓ GDPR compliance + secure unsubscribe
- ✓ Bilingual templates (Arabic + English)
- ✓ Exponential retry on send failures
- — Automation Builder
- — Advanced analytics & CSV export
- — AI tools
- ✓ Everything in Starter
- ✓ Automation Builder — visual sequence editor with custom delays & rules
- ✓ Advanced analytics — conversion funnel & cohort data
- ✓ Recovery Timeline view
- ✓ Recovery Funnel reports
- ✓ Conversion reports
- ✓ CSV export of all cart & recovery data
- — AI Message Generator
- — AI Send Time Optimizer
- — White Label
- — Priority Support
- ✓ Everything in Growth
- ✓ AI Message Generator — context-aware WhatsApp & email copy
- ✓ AI Send Time Optimizer — best delivery window per customer
- ✓ AI Coupon Recommender — optimal discount % per cart
- ✓ AI Recovery Score — likelihood-to-recover per cart
- ✓ White Label — remove CartPulse branding entirely
- ✓ Priority Support — dedicated response lane
- ✓ Manage unlimited client stores
📋 Feature Comparison Table
| Feature | ⚡ Starter $79/yr launch |
🚀 Growth $179/yr launch |
👑 Agency $349/yr launch |
|---|---|---|---|
| Core Recovery | |||
| Smart cart tracking (guests + logged-in) | ✓ | ✓ | ✓ |
| Email recovery — 3-step auto sequence | ✓ | ✓ | ✓ |
| WhatsApp recovery — manual mode | ✓ | ✓ | ✓ |
| WhatsApp API auto (Twilio / 360dialog) | ✓ | ✓ | ✓ |
| Auto-generated unique coupons | ✓ | ✓ | ✓ |
| One-click secure recovery links | ✓ | ✓ | ✓ |
| Exit intent popup + blur capture | ✓ | ✓ | ✓ |
| Exponential retry on failures | ✓ | ✓ | ✓ |
| GDPR mode + secure unsubscribe | ✓ | ✓ | ✓ |
| Bilingual templates (Arabic + English) | ✓ | ✓ | ✓ |
| Analytics & Reporting | |||
| Basic analytics dashboard | ✓ | ✓ | ✓ |
| Advanced analytics | — | ✓ | ✓ |
| Recovery Timeline view | — | ✓ | ✓ |
| Recovery Funnel reports | — | ✓ | ✓ |
| Conversion reports | — | ✓ | ✓ |
| CSV export | — | ✓ | ✓ |
| Automation & Customization | |||
| Automation Builder (visual editor) | — | ✓ | ✓ |
| Custom sequence delays per channel | — | ✓ | ✓ |
| AI Tools (Agency Only) | |||
| AI Message Generator | — | — | ✓ |
| AI Send Time Optimizer | — | — | ✓ |
| AI Coupon Recommender | — | — | ✓ |
| AI Recovery Score per cart | — | — | ✓ |
| Branding & Support | |||
| White Label (remove CartPulse branding) | — | — | ✓ |
| Priority Support | — | — | ✓ |
| Site Licenses | |||
| Number of sites | 1 site | Up to 3 sites | Unlimited |
- ✓ كشف السلات المتروكة بذكاء
- ✓ استرداد البريد الإلكتروني (تسلسل 3 خطوات تلقائي)
- ✓ استرداد واتساب — وضع يدوي (مجاني، بدون API)
- ✓ واتساب API تلقائي (Twilio / 360dialog)
- ✓ كوبونات فريدة تلقائية لكل عميل
- ✓ روابط استرداد آمنة بنقرة واحدة
- ✓ نافذة نية المغادرة + التقاط الدفع
- ✓ لوحة تحليلات أساسية
- ✓ امتثال GDPR + إلغاء اشتراك آمن
- ✓ قوالب ثنائية اللغة (عربي + إنجليزي)
- ✓ إعادة محاولة تلقائية عند فشل الإرسال
- — منشئ الأتمتة
- — تحليلات متقدمة وتصدير CSV
- — أدوات الذكاء الاصطناعي
- ✓ كل شيء في خطة Starter
- ✓ منشئ الأتمتة — محرر تسلسل مرئي بتأخيرات وقواعد مخصصة
- ✓ تحليلات متقدمة — قمع التحويل وبيانات مجمّعة
- ✓ عرض الجدول الزمني للاسترداد
- ✓ تقارير قمع الاسترداد
- ✓ تقارير التحويل
- ✓ تصدير CSV لجميع بيانات السلة والاسترداد
- — منشئ رسائل الذكاء الاصطناعي
- — محسّن وقت الإرسال بالذكاء الاصطناعي
- — وايت لابل
- — دعم أولوية
- ✓ كل شيء في خطة Growth
- ✓ منشئ رسائل AI — نسخ واتساب وبريد واعي بالسياق
- ✓ محسّن وقت الإرسال AI — أفضل نافذة تسليم لكل عميل
- ✓ موصي كوبون AI — نسبة خصم مثالية لكل سلة
- ✓ درجة الاسترداد AI — احتمال الاسترداد لكل سلة
- ✓ وايت لابل — إزالة علامة CartPulse تماماً
- ✓ دعم الأولوية — قناة استجابة مخصصة
- ✓ إدارة متاجر عملاء غير محدودة
19Changelogسجل التغييرات
- Fixed empty WooCommerce session overwrite bug — bots and crawlers no longer match or corrupt real guest cartsإصلاح خطأ الكتابة فوق الجلسة الفارغة — الزواحف والروبوتات لا تطابق سلات الزوار الحقيقيين بعد الآن
- Added dedicated indexed session_key column with safe batched migration (LIMIT 500) — eliminates full-table scansإضافة عمود session_key مفهرس مع ترحيل آمن مُجزّأ (500 صف) — يلغي مسح الجداول بالكامل
- Implemented GDPR-compliant persistent unsubscribe with hash_equals() constant-time token validationتطبيق إلغاء اشتراك دائم متوافق مع GDPR مع التحقق من الرمز في وقت ثابت hash_equals()
- Fixed WC()->cart null access on recovery links via native wc_load_cart() — eliminates fatal errorsإصلاح خطأ الوصول الفارغ لـ WC()->cart عبر wc_load_cart() الأصيلة — يلغي الأخطاء القاتلة
- Optimized WhatsApp queue option to non-autoloaded storage — prevents memory bloat on large storesتحسين خيار طابور واتساب إلى تخزين غير محمّل تلقائياً — يمنع انتفاخ الذاكرة في المتاجر الكبيرة
- Normalized coupon codes to lowercase for consistent WooCommerce matching — historical uppercase coupons still workتوحيد أكواد الكوبون بالأحرف الصغيرة لمطابقة متسقة في WooCommerce — الكوبونات القديمة لا تزال تعمل
- Fixed $wpdb->prepare() parameterless warning in auto_delete_lost_carts()إصلاح تحذير prepare() بدون معاملات في auto_delete_lost_carts()
- Exit intent popup for guest email capture before leavingنافذة نية المغادرة لالتقاط البريد قبل المغادرة
- Cookie-based 30-day return visitor email tracking (cartpulse_email)تتبع البريد بالكوكيز لمدة 30 يوماً للزوار العائدين
- Floating animated WhatsApp bubble with cart item count badgeفقاعة واتساب عائمة متحركة مع شارة عدد عناصر السلة
- Manual WhatsApp pending queue dashboard with one-click sendلوحة طابور واتساب اليدوي المعلق مع إرسال بنقرة واحدة
- WooCommerce HPOS compatibility declaredإعلان توافق HPOS مع WooCommerce
- Exponential backoff retry system for failed sends (up to 5 retries)نظام إعادة المحاولة التصاعدي للإرسالات الفاشلة (حتى 5 محاولات)
- Export abandoned cart data to CSVتصدير بيانات السلات المتروكة إلى CSV
- Fixed timezone handling for abandonment detection (WP local time vs UTC)إصلاح معالجة المنطقة الزمنية لاكتشاف التخلي (التوقيت المحلي لووردبريس مقابل UTC)
- Core abandoned cart tracking for guests and logged-in usersتتبع السلات المتروكة الأساسي للزوار والمستخدمين المسجلين
- 3-step email recovery sequences with HTML templatesتسلسلات استرداد بريدية من 3 خطوات مع قوالب HTML
- WhatsApp manual mode (wa.me links)وضع واتساب اليدوي (روابط wa.me)
- Auto-coupon generation for Step 3إنشاء الكوبون التلقائي للخطوة 3
- Analytics dashboard with demo data preloadلوحة تحليلات مع تحميل مسبق للبيانات التجريبية
- LemonSqueezy license systemنظام ترخيص LemonSqueezy