الموزعون (ذو العلامة البيضاء)
المكان في لوحة التحكم: Customers › Resellers › List (
/resellers)، Domains & SSL (/resellers/domains)، Permissions & wholesale (/resellers/entitlements)، Defaults (/resellers/settings). فتحات الموزعين: System › Admin › License & updates (/license).
الوظيفة
يحصل الموزع على نسخة تحمل علامته التجارية من بوابة العملاء على نطاقه الخاص، مع عملائه، ومحفظته، وأسعاره، وقنوات الدفع (اختيارياً). وهم يشترون منك بسعر الجملة ويبيعون بسعرهم الخاص. ولا يرى عملاؤهم علامتك التجارية أبداً، ولا يمكن لنطاق الموزع فتح وحدة تحكم المشرف الخاصة بك. ويدير الموزع عملياته من لوحة تحكم الشريك على https://partner.<your-domain>.
المتطلبات
| العنصر | المتطلب |
|---|---|
| الترخيص | فتحة نطاق موزع واحدة على ترخيصك لكل نطاق موزع مخصص. تظهر صفحة الترخيص فتحات used/max ورابطاً لشراء المزيد. وبدون فتحة متوفرة، يفشل إضافة نطاق مع رسالة "Out of license reseller domain slots". |
| DNS | يجب توجيه نطاق كل موزع نحو خادمك (انظر أدناه). |
| خادم الويب وبروتوكول TLS | يجب أن يصل اسم الخادم إلى لوحة NexCMP عبر الوكيل العكسي (Reverse Proxy) مع شهادة صالحة لذلك الاسم. |
| البريد الإلكتروني | تم تكوين SMTP لإرسال رسائل الدعوة والإشعارات. |
| المفتاح الرئيسي | Reseller settings › General › rs_enabled قيد التشغيل افتراضياً. |
تجهيز البنية التحتية
حدِّد العنوان العام للخادم: عنوان IPv4 الخاص به وإذا كنت تفضل استخدام أسماء CNAME، اسم خادم يشير إليه (على سبيل المثال
sites.cloud.example.com).افتح Customers › Resellers › Defaults (
/resellers/settings)، والمجموعة Domains & SSL، واضبط:المفتاح المعنى rs_server_ipv4عنوان IPv4 العام الذي يجب أن تشير إليه سجلات A الخاصة بالموزعين. rs_cname_targetاسم الخادم الذي يجب أن تشير إليه سجلات CNAME الخاصة بالموزعين. rs_master_hostsأسماء النطاقات التي تنتمي إلى موقعك الرئيسي الخاص (لا يمكن منحها للموزعين). rs_platform_domainنطاق رئيسي اختياري لنطاقات المنصة الفرعية (على سبيل المثال partners.cloud.example.comلمنح الموزعينacme.partners.cloud.example.com). الإفراغ يعطل الخيار.rs_sites_stale_minutesالدقائق التي تُعتبر بعدها خدمة الشهادة قديمة (الافتراضي 15). rs_ssl_fail_hoursساعات المحاولات الفاشلة قبل إطلاق خطأ (الافتراضي 48). تحقق من هذه القيم قبل إرسال التعليمات
تأتي
rs_server_ipv4وrs_cname_targetوrs_master_hostsمحمّلة بقيم نموذجية. استبدلها بخادمك ونطاقك الخاص قبل إجادة تعليمات نظام أسعار النطاقات (DNS) للموزع، وإلا فإن التعليمات التي تظهر على الشاشة ستشير إلى المكان الخطأ.انقر فوق Save (يُطلب سبب لذلك).
تأكد من أن الوكيل العكسي (Reverse Proxy) يوجه أسماء نطاقات الموزعين إلى لوحة NexCMP ويقوم بخدمة شهادة لكل منها. يقوم المثبت بتكوين nginx و Let's Encrypt فقط للنطاق الرئيسي (وأسماء
admin.وpartner.التي يتم حلها). إذا كنت تستخدم Cloudflare، فوكِّل اسم النطاق واستخدم وضع Full SSL.
الربط في NexCMP
إنشاء الموزع
افتح Customers › Resellers › List وانقر فوق New reseller. يحتوي المعالج على 8 خطوات ويقوم بتجهيز كل شيء في النهاية؛ ويمكن إعادة محاولة كل خطوة بأمان.
الخطوة املأ الموزع الاسم القانوني أو التجاري، الاسم المختصر (slug) (4–31 حرفاً من a إلى z، أو من 0 إلى 9 أو -، تبدأ بحرف؛ وهي أيضاً بادئة الفاتورة)، اسم جهة الاتصال، البريد الإلكتروني ورقم الهاتف، اللغة الافتراضية، تفاصيل الفوترة الخاصة بالموزع (باعتباره مشترياً لعمليات شحن المحفظة).حساب لوحة التحكم اسم المستخدم، البريد الإلكتروني للحساب، الاسم الكامل؛ إرسال رابط دعوة لمرة واحدة عبر البريد الإلكتروني (صالح لمدة 72 ساعة، وهو موصى به) أو عرض كلمة مرور مؤقتة لمرة واحدة. Brand اسم العلامة التجارية، الاسم المختصر، العبارات التعريفية، الألوان الأساسية، بريد ودعم الهاتف، اسم البائع المطبوع على فواتير العملاء، الشعارات (الخلفية الفاتحة والداكنة)، العلامة المربعة وfavicon: بصيغة PNG أو JPEG أو WEBP أو ICO بحجم يصل إلى 256 كيلوبايت، بدون SVG. Domains النطاق (النطاقات) للعميل مع وجود www أيضاً، وأيها هو الرئيسي، نطاق الاختبار (sslip.io) وخيار التشغيل التجريبي (dry-run)، أو نطاق فرعي للمنصة. يوضح المعالج حالتي DNS OK / DNS not ready والسجلات المراد إنشاؤها. Pricing & wallet خصم الجملة (٪)، حد التجزئة الأدنى (٪ من القائمة)، هامش الربح الافتراضي (٪)، حد الائتمان، الرصيد الافتئي، تنبيه انخفاض الرصيد، القيود المفروضة على العملاء، الأجهزة الافتراضية والنطاقات، ميزات الموقع (تسجيل العملاء، حماية DDoS، تذاكر الدعم، الخطة المخصصة، تغيير الحجم، Auto Scaling). Payment channels من يقوم بتحصيل مدفوعات العملاء (انظر أدناه) وحساب PayPal الخاص الاختياري والتحويل البنكي الفيتنامي الخاص. Email اسم المرسل والرد إلى (Reply-To). يظل عنوان (From) هو عنوان المنصة حتى يتم إعداد DKIM لنطاق الموزع. Review تحقق من كل شيء وانقر على Provision everything، أو Save draft (provision later). يستمر التوفير في الخلفية (كل 30 ثانية). افتح الموزع لمعرفة التقدم واستخدم Continue provisioning أو Retry في حالة فشل أي خطوة.

توجيه نظام أسماء النطاقات DNS (يقوم الموزع بذلك)
يقوم الموزع (أو أنت) بإنشاء السجلات المعروضة في علامة التبويب Domains & SSL:
| السجل | الاسم | القيمة |
|---|---|---|
| TXT (الملكية، للمرة الأولى فقط) | _site-verify.<domain> | sv=<token> تظهر على الشاشة |
A (النطاق الرئيسي مثل shop.example.net) | النطاق | rs_server_ipv4 الخاص بك |
CNAME (نطاق فرعي مثل cloud.example.net) | النطاق | rs_cname_target الخاص بك (أو سجل A إلى rs_server_ipv4) |
| CNAME (اختياري) | www.<domain> | rs_cname_target الخاص بك |
أيضاً:
- قم بإزالة أي سجل AAAA (IPv6) ما لم يكن خادمك يستجيب على عنوان IPv6 هذا.
- قم بإيقاف وكيل شبكة توزيع的内容 CDN (السحاب الرمادي) أثناء التحقق من النطاق.
- إذا كان النطاق يحتوي على سجلات CAA، فالرجاء السماح بـ
letsencrypt.org.
الرمز الموجود في سجل TXT يختلف لكل نطاق؛ انسخه من الشاشة. يعيد النظام التحقق من DNS كل 5 دقائق خلال أول 48 ساعة، ثم كل ساعة، ويحرر الاسم الذي يظل سجل TXT الخاص به مفقوداً بعد 72 ساعة.
حالات النطاق
في Customers › Resellers › Domains & SSL (جميع الموزعين) وفي علامة تبويب Domains & SSL الخاصة بالموزع:
| الحالة | المعنى |
|---|---|
pending_verify | في انتظار سجل TXT. |
pending_dns / verifying | في انتظار إشارة A أو CNAME لتشير إليك. |
issuing | جارٍ إصدار الشهادة. |
active | يتم تقديم موقع الموزع. |
cert_expiring | الشهادة على وشك الانتهاء؛ والتجديد متوقع. |
dns_lost | توقف DNS عن الإشارة إليك؛ بعد 30 يوماً يتم إزالة النطاق. |
error | راجع رمز الخطأ؛ Retry بعد الإصلاح. |
removing / removed | جارٍ سحب الترخيص؛ تتم استعادة خانة الترخيص. |
إجراءات الصف: Check now، Retry، Make primary، Test mode (لنطاق اختبار)، Remove.
الصلاحيات والأسعار بالجملة
Customers › Resellers › Permissions & wholesale (/resellers/entitlements) عبارة عن مصفوفة: صف واحد لكل موزع، مع خصم وهامش ربح الجملة ومفتاح تبديل واحد لكل خدمة (مثل حماية DDoS وشبكة VPN). يكون مفتاح التبديل قابلاً للتعديل عندما تكون الميزة على مستوى المنصة مفعلة؛ وإلا فإن الخلية تصبح للقراءة فقط وترتبط بالإعداد. يحدد علامة التبويب الفرعية Top-up codes عدد الرموز التي يمكن لكل موزع إصدارها شهرياً (انظر Promotions).
قواعد التسعير:
- سعر الجملة = قائمة الأسعار × (1 - خصم)، ويمكن تجاوزه لكل خطة ولكل دورة فوترة في علامة التبويب Wholesale pricing الخاصة بالموزع.
- يحدد الموزع أسعار التجزئة ولا يمكنه النزول عن الحد الأدنى (نسبة مئوية من السعر الأساسي).
- تُدفع سعر الجملة من محفظة الموزع عندما يقوم عملاؤهم بالشراء. وتحتوي المحفظة على حد ائتماني، وفترة سماح، وسقف للسحب على المكشوف (انظر Defaults).
الافتراضيات
Customers › Resellers › Defaults (/resellers/settings) هي مفاتيح rs_* التي تُطبق على كل موزع. يتطلب كل تغيير سبباً ويخضع للمراجعة والتدقيق.
| المجموعة | المفتاح | القيمة الافتراضية | المعنى |
|---|---|---|---|
| عام | rs_enabled | 1 | برنامج الموزعين مفعل. |
rs_platform_collect_enabled | 0 | يسمح للمنصة بتحصيل مدفوعات العملاء نيابة عن الموزعين. يُفعل فقط بعد المراجعة القانونية. | |
rs_totp_required | 1 | يجب أن تستخدم حسابات وحدة تحكم الموزع المصادقة الثنائية. | |
rs_agreement_version | 1 | إصدار اتفاقية الموزع التي يجب عليهم قبولها. | |
| التسعير الافتراضي | rs_default_discount_bp | 2000 (20 %) | خصم الجملة للموزعين الجدد (نقاط أساس، من 0 إلى 9000). |
rs_default_markup_bp | 2500 (25 %) | هامش الربح الافتراضي (من 0 إلى 50000). | |
rs_default_floor_bp | 9000 (90 %) | الحد الأدنى للتجزئة (من 0 إلى 20000). | |
rs_default_max_domains | 3 | النطاقات المسموح بها لكل موزع. | |
| المحفظة وعمليات الدفع | rs_grace_hours | 72 | فترة السماح قبل تأثر خدمات العملاء بخلو محفظة الموزع. |
rs_overdraft_cap_cents | 5000 | السحب على المكشوف المسموح به في المحفظة. | |
rs_retention_days | 14 | الأيام قبل تدمير الأجهزة الافتراضية الخاصة بموزع مغلق. | |
rs_payout_hold_days | 30 | الأيام التي يُحتجز فيها العمولة قبل إمكانية سحبها. | |
rs_payout_min_cents | 5000 | أقل مبلغ سحب. | |
rs_topup_min_cents | 2000 | أقل عملية شحن للمحفظة يقوم بها الموزع. | |
| المدفوعات والبريد | rs_webhook_base | فارغ | عنوان URL الأساسي العام لخطافات ويب (webhooks) الخاصة ببوابة الموزع (فارغ = استخدام عنوان URL للموقع). |
rs_mail_from | فارغ | عنوان المرسل لرسائل بريد الموزعين. | |
rs_invoice_show_processor | 1 | إظهار معالج الدفع على الفواتير. | |
rs_gw_stripe_enabled, rs_gw_usdt_enabled | 1 | ما إذا كان يُسمح للموزعين بتكوين Stripe أو USDT الخاص بهم. |
من يقوم بتحصيل مدفوعات العملاء
| Mode | المعنى |
|---|---|
| الموزع هو من يحصل (عبر قنواته الخاصة) — افتراضي | يقوم الموزع بتوصيل حساب Stripe أو PayPal أو USDT أو الحساب المصرفي الخاص به. خطافات الويب الخاصة بهم هي https://<reseller-domain>/v1/billing/<gateway>/webhook/r/<id>. البطاقات المحفوظة وميزة auto top-up غير متاحتين لهذه المواقع. |
| المنصة تقوم بالتحصيل | يتم عرض قنواتك على موقع الموزع. مقفلة حتى rs_platform_collect_enabled = 1. |
| مختلط | مزيج يتم اختياره لكل قناة. |
ما يراه الموزع
تتضمن وحدة تحكم الشريك في https://partner.<your-domain> خيارات Overview وReports وCustomers وVMs وTickets وOrders وPayments وPrices وBrand وLanding & legal وDomains & SSL وEmail وWallet وPayment channels. تحظى حسابات وحدة التحكم بدور reseller (بالكامل) أو staff (للقراءة فقط). لإلقاء نظرة بنفسك، افتح الموزع وانقر على Sign in to partner console: ستدخل لمدة 60 دقيقة، ويتم تسجيل كل عملية كتابة باسمك في كل من سجل المشرف وسجل الموزع، وتتطلب عمليات الأموال تأكيداً ثانياً.
التحقق
- بعد التجهيز، يُظهر صف قائمة الموزع حالة active وعمود Provisioning أخضر.
- افتح نطاق الموزع في متصفح: تظهر صفحة تسجيل الدخول الخاصة بالموزع مع علامته التجارية. يجيب
https://<reseller-domain>/adminبـ 404. - قم بتسجيل عميل اختبار على هذا النطاق: يظهر العميل ضمن Customers › List مع وجود الموزع في عمود Site.
- تظهر صفحة الترخيص خانة استخدام إضافية واحدة.
الحدود والملاحظات
- فتحة ترخيص واحدة لكل نطاق مخصص أو اختباري؛ النطاقات الفرعية للمنصة لا تستهلك فتحة.
- تعليق الموزع يحتفظ بالبيانات؛ Close reseller يعيد جميع فتحات النطاقات، ولا يُسمح بحذف الأجهزة الافتراضية إلا بعد فترة الاحتفاظ.
- يظهر عملاء الموزع في قائمة العملاء لديك ويمكن تقمص شخصياتهم كأي عميل آخر (يفتح الرابط على نطاق الموزع).
- لا يمكن للموزعين رؤية أو تغيير قنوات الدفع الخاصة بك، أو القيم الافتراضية للحصص، أو الموزعين الآخرين.
استكشاف الأخطاء وإصلاحها
| العَرَض | السبب | الحل |
|---|---|---|
| "نفدت فتحات نطاقات الموزع في الترخيص" | All slots used | حرر فتحة (احذف نطاقاً) أو اشترِ المزيد من صفحة الترخيص. |
Domain stuck in pending_verify | TXT record missing | أنشئ سجل TXT تماماً كما يظهر؛ استخدم Check now. |
Domain stuck in pending_dns | سجل A/CNAME لا يشير إليك، أو سجل AAAA، أو بروكسي CDN مفعل | أصلح نظام الأسماء النطاقية (DNS)، وأوقف تشغيل البروكسي، ثم انقر على Check now. |
error state | راجع الكود في السطر (على سبيل المثال، سجل CAA يحظر Let's Encrypt، حد معدل الطلبات) | أصلح المشكلة وانقر على Retry. |
| يقول المتصفح إن المضيف غير معروف أو "421" | اسم المضيف غير موجود في الترخيص، أو غير موجه إلى اللوحة | أضف النطاق عبر الموزع (يستهلك فتحة) وأصلح البروكسي العكسي. |
| التعليمات تظهر عنوان IP أو مضيفاً خاطئاً | rs_server_ipv4 / rs_cname_target ما زالا يحتفظان بالقيم التجريبية | Set them in Defaults. |
| لا يمكن للموزع تفعيل تحصيل المنصة | Locked | اضبط rs_platform_collect_enabled بعد المراجعة القانونية. |