Resellers (white-label)
Lokasi di admin: Customers › Resellers › List (
/resellers), Domains & SSL (/resellers/domains), Permissions & wholesale (/resellers/entitlements), Defaults (/resellers/settings). Slot reseller: System › Admin › License & updates (/license).
Fungsi
Seorang reseller mendapatkan salinan portal pelanggan dengan merek mereka sendiri di domain mereka sendiri, dengan pelanggan, dompet, harga, dan (opsional) saluran pembayaran mereka sendiri. Mereka membeli dari Anda dengan harga grosir dan menjual dengan harga mereka sendiri. Pelanggan mereka tidak akan pernah melihat merek Anda, dan domain reseller tidak akan pernah dapat membuka konsol admin Anda. Reseller menjalankan bisnis mereka dari konsol mitra di https://partner.<your-domain>.
Persyaratan
| Item | Persyaratan |
|---|---|
| License | Satu slot domain reseller pada lisensi Anda untuk setiap domain reseller kustom. Halaman lisensi menampilkan slot used/max dan tautan untuk membeli lebih banyak. Tanpa slot gratis, penambahan domain akan gagal dengan "Out of license reseller domain slots". |
| DNS | Setiap domain reseller harus diarahkan ke server Anda (lihat di bawah). |
| Web server dan TLS | Nama host harus dapat mencapai panel NexCMP melalui reverse proxy Anda dengan sertifikat yang valid untuk nama tersebut. |
| SMTP dikonfigurasi untuk email undangan dan pemberitahuan. | |
| Master switch | Reseller settings › General › rs_enabled aktif secara default. |
Siapkan infrastruktur
Tentukan alamat publik server: alamat IPv4-nya dan, jika Anda lebih menyukai CNAME, nama host yang mengarah ke sana (misalnya
sites.cloud.example.com).Buka Customers › Resellers › Defaults (
/resellers/settings), grup Domains & SSL, dan atur:Kunci Arti rs_server_ipv4IPv4 publik yang harus dituju oleh record A reseller. rs_cname_targetNama host yang harus dituju oleh record CNAME reseller. rs_master_hostsNama host milik situs utama Anda sendiri (tidak dapat diberikan kepada reseller). rs_platform_domainDomain induk opsional untuk sub-domain platform (misalnya partners.cloud.example.comuntuk memberi reselleracme.partners.cloud.example.com). Kosong berarti menonaktifkan opsi.rs_sites_stale_minutesMenit sebelum layanan sertifikat dianggap kedaluwarsa (default 15). rs_ssl_fail_hoursJam percobaan yang gagal sebelum kesalahan dinaikkan (default 48). Periksa nilai-nilai ini sebelum mengirimkan instruksi
rs_server_ipv4,rs_cname_target, danrs_master_hostsdikirimkan dengan nilai contoh. Ganti dengan server dan domain Anda sendiri sebelum Anda memberikan instruksi DNS kepada reseller, jika tidak, instruksi di layar akan mengarah ke tempat yang salah.Klik Save (alasan diperlukan).
Pastikan reverse proxy Anda meneruskan nama host reseller ke panel NexCMP dan menyajikan sertifikat untuk masing-masing host. Installer mengonfigurasi nginx dan Let's Encrypt hanya untuk domain utama (serta nama
admin.danpartner.yang ter-resolve). Jika Anda menggunakan Cloudflare, proxy nama host tersebut dan gunakan mode Full SSL.
Hubungkan di NexCMP
Membuat reseller
Buka Customers › Resellers › List dan klik New reseller. Wizard ini memiliki 8 langkah dan menyediakan semuanya di akhir; setiap langkah dapat dicoba ulang dengan aman.
Langkah Isi Reseller Nama resmi atau dagang, slug (4–31 karakter a–z, 0–9 atau -, diawali dengan huruf; ini juga menjadi prefiks faktur), nama kontak, email dan telepon, bahasa default, detail penagihan reseller (sebagai pembeli top-up saldo).Akun konsol Nama pengguna, email akun, nama lengkap; Send a one-time invite link by e-mail (berlaku 72 jam, disarankan) atau tampilkan kata sandi sementara satu kali. Merek Nama merek, nama pendek, tagline, warna primer, email dan telepon dukungan, nama penjual yang tercetak pada invoice pelanggan, logo (latar belakang terang dan gelap), tanda persegi, dan favicon: PNG, JPEG, WEBP, atau ICO hingga 256 KB, tanpa SVG. Domain Domain pelanggan beserta juga www, mana yang utama, domain uji (sslip.io) dan opsi dry-run, atau sub-domain platform. Wizard menampilkan DNS OK / DNS not ready beserta record yang harus dibuat. Harga & dompet Diskon grosir (%), batas bawah ritel (% dari daftar), mark-up default (%), batas kredit, saldo awal, peringatan saldo rendah, batasan pelanggan, VM, dan domain, fitur situs (pendaftaran pelanggan, perlindungan DDoS, tiket dukungan, paket kustom, ubah ukuran, Auto Scaling). Saluran pembayaran Pihak yang menagih pembayaran pelanggan (lihat di bawah) serta opsi PayPal mandiri dan transfer bank VN mandiri. Email Nama pengirim dan Reply-To. Alamat From akan tetap menggunakan alamat platform hingga DKIM disiapkan untuk domain reseller. Tinjauan Periksa semuanya lalu klik Provision everything, atau Save draft (provision later). Provisioning berlanjut di latar belakang (setiap 30 detik). Buka reseller untuk melihat progresnya dan gunakan Continue provisioning atau Retry jika suatu langkah gagal.

Arahkan DNS (dilakukan oleh reseller)
Reseller (atau Anda) membuat record yang ditampilkan pada tab Domains & SSL:
| Record | Name | Nilai |
|---|---|---|
| TXT (kepemilikan, kali pertama saja) | _site-verify.<domain> | sv=<token> ditampilkan di layar |
A (domain apex seperti shop.example.net) | domain | rs_server_ipv4 Anda |
CNAME (sub-domain seperti cloud.example.net) | domain | rs_cname_target Anda (atau record A ke rs_server_ipv4) |
| CNAME (opsional) | www.<domain> | rs_cname_target Anda |
Juga:
- Hapus record AAAA (IPv6) apa pun kecuali server Anda merespons pada alamat IPv6 tersebut.
- Matikan proxy CDN off (awan abu-abu) saat domain sedang diverifikasi.
- Jika domain memiliki record CAA, izinkan
letsencrypt.org.
Token dalam record TXT berbeda untuk setiap domain; salin dari layar. Sistem memeriksa ulang DNS setiap 5 menit selama 48 jam pertama, lalu setiap jam, dan melepaskan nama yang record TXT-nya masih belum ada setelah 72 jam.
Status domain
Pada Customers › Resellers › Domains & SSL (semua reseller) dan di tab Domains & SSL milik reseller:
| Status | Arti |
|---|---|
pending_verify | Menunggu record TXT. |
pending_dns / verifying | Menunggu A atau CNAME mengarah ke Anda. |
issuing | Sertifikat sedang diterbitkan. |
active | Melayani situs reseller. |
cert_expiring | Sertifikat hampir kedaluwarsa; pembaruan diharapkan. |
dns_lost | DNS berhenti mengarah ke Anda; setelah 30 hari domain dihapus. |
error | Lihat kode error; Retry setelah memperbaiki. |
removing / removed | Sedang ditarik; slot lisensi dikembalikan. |
Tindakan baris: Check now, Retry, Make primary, Test mode (untuk domain uji), Remove.
Izin & grosir
Customers › Resellers › Permissions & wholesale (/resellers/entitlements) adalah matriks: satu baris per reseller, dengan diskon dan markup grosir serta satu tombol untuk setiap layanan (misalnya DDoS Shield dan VPN). Tombol dapat diedit saat fitur tingkat platform aktif; jika tidak, sel tersebut bersifat baca-saja dan menautkan ke pengaturan. Sub-tab Top-up codes menentukan berapa banyak kode yang dapat dikeluarkan oleh setiap reseller per bulan (lihat Promotions).
Aturan harga:
- Harga grosir = harga daftar x (1 - diskon), dan dapat ditimpa per paket dan per siklus penagihan di tab Wholesale pricing milik reseller.
- Reseller menetapkan harga eceran dan tidak boleh lebih rendah dari batas floor (persentase dari harga daftar).
- Wallet reseller membayar harga grosir saat pelanggan mereka melakukan pembelian. Wallet memiliki batas kredit, masa tenggang, dan batas cerukan (lihat Defaults).
Defaults
Customers › Resellers › Defaults (/resellers/settings) adalah kunci rs_* yang berlaku untuk setiap reseller. Setiap perubahan memerlukan alasan dan akan diaudit.
| Grup | Kunci | Default | Arti |
|---|---|---|---|
| Umum | rs_enabled | 1 | Program reseller aktif. |
rs_platform_collect_enabled | 0 | Memungkinkan platform untuk mengumpulkan pembayaran pelanggan untuk reseller. Aktifkan hanya setelah tinjauan hukum. | |
rs_totp_required | 1 | Akun konsol reseller wajib menggunakan autentikasi dua faktor. | |
rs_agreement_version | 1 | Versi perjanjian reseller yang harus mereka setujui. | |
| Harga default | rs_default_discount_bp | 2000 (20 %) | Diskon grosir untuk reseller baru (basis poin, 0 hingga 9000). |
rs_default_markup_bp | 2500 (25 %) | Markup default (0 hingga 50000). | |
rs_default_floor_bp | 9000 (90 %) | Batas eceran (0 hingga 20000). | |
rs_default_max_domains | 3 | Domain yang diizinkan per reseller. | |
| Wallet dan pembayaran | rs_grace_hours | 72 | Masa tenggang sebelum layanan pelanggan terpengaruh oleh wallet reseller yang kosong. |
rs_overdraft_cap_cents | 5000 | Cerukan diizinkan pada wallet. | |
rs_retention_days | 14 | Hari sebelum VM dari reseller yang ditutup dihapus. | |
rs_payout_hold_days | 30 | Hari komisi ditahan sebelum dapat ditarik. | |
rs_payout_min_cents | 5000 | Penarikan terkecil. | |
rs_topup_min_cents | 2000 | Top-up wallet terkecil oleh reseller. | |
| Pembayaran dan email | rs_webhook_base | kosong | URL dasar publik untuk webhook gateway reseller (kosong = gunakan URL situs). |
rs_mail_from | kosong | Alamat pengirim untuk email reseller. | |
rs_invoice_show_processor | 1 | Tampilkan pemroses pembayaran pada faktur. | |
rs_gw_stripe_enabled, rs_gw_usdt_enabled | 1 | Apakah reseller diizinkan mengonfigurasi Stripe atau USDT mereka sendiri. |
Siapa yang mengumpulkan pembayaran pelanggan
| Mode | Arti |
|---|---|
| Reseller mengumpulkan (saluran sendiri) — default | Reseller menghubungkan akun Stripe, PayPal, USDT, atau rekening bank mereka sendiri. Webhook mereka adalah https://<reseller-domain>/v1/billing/<gateway>/webhook/r/<id>. Kartu yang disimpan dan auto top-up tidak tersedia untuk situs-situs ini. |
| Platform mengumpulkan | Saluran Anda ditampilkan di situs reseller. Dikunci hingga rs_platform_collect_enabled = 1. |
| Campuran | Kombinasi yang dipilih per saluran. |
Apa yang dilihat reseller
Konsol mitra di https://partner.<your-domain> memiliki menu Overview, Reports, Customers, VMs, Tickets, Orders, Payments, Prices, Brand, Landing & legal, Domains & SSL, Email, Wallet, dan Payment channels. Akun konsol memiliki peran reseller (penuh) atau staff (baca-saja). Untuk melihatnya sendiri, buka reseller dan klik Sign in to partner console: Anda masuk selama 60 menit, setiap penulisan dicatat dengan nama Anda di log admin dan log reseller, serta operasi keuangan memerlukan konfirmasi kedua.
Verifikasi
- Setelah provisioning, baris daftar reseller menunjukkan active dan kolom Provisioning berwarna hijau.
- Buka domain reseller di browser: halaman login milik reseller sendiri akan muncul dengan brand mereka.
https://<reseller-domain>/adminmengembalikan 404. - Daftarkan pelanggan uji coba pada domain tersebut: pelanggan akan muncul di bawah Customers › List dengan reseller pada kolom Site.
- Halaman lisensi menunjukkan penambahan satu slot yang digunakan.
Batas & catatan
- Satu slot lisensi per domain kustom atau uji coba; sub-domain platform tidak menggunakan slot.
- Menangguhkan reseller akan mempertahankan data; Close reseller mengembalikan semua slot domain, dan penghapusan VM hanya diizinkan setelah masa retensi.
- Pelanggan reseller muncul dalam daftar pelanggan Anda dan dapat di-impersonate seperti pelanggan lainnya (tautan terbuka pada domain reseller).
- Reseller tidak dapat melihat atau mengubah saluran pembayaran Anda, default kuota, atau reseller lainnya.
Pemecahan Masalah
| Gejala | Penyebab | Solusi |
|---|---|---|
| "Slot domain reseller kehabisan lisensi" | Semua slot terpakai | Kosongkan slot (hapus domain) atau beli lebih banyak di halaman lisensi. |
Domain mandek di pending_verify | Catatan TXT hilang | Buat catatan TXT persis seperti yang ditunjukkan; gunakan Check now. |
Domain mandek di pending_dns | A/CNAME tidak mengarah ke Anda, catatan AAAA aktif, atau proxy CDN aktif | Perbaiki DNS, matikan proxy, lalu Check now. |
Status error | Lihat kode pada baris (misalnya CAA memblokir Let's Encrypt, batas tarif) | Perbaiki dan klik Retry. |
| Browser mengatakan host tidak dikenal atau "421" | Nama host tidak ada pada lisensi, atau tidak dirutekan ke panel | Tambahkan domain melalui reseller (menghabiskan slot) dan perbaiki reverse proxy. |
| Instruksi menunjukkan IP atau host yang salah | rs_server_ipv4 / rs_cname_target masih memiliki nilai sampel | Atur nilainya di Defaults. |
| Reseller tidak dapat mengaktifkan platform collection | Terkunci | Atur rs_platform_collect_enabled setelah tinjauan hukum. |