Basis pengetahuan

Menjual hosting Zinn® dari sistem Anda sendiri

Kelola hosting Zinn® dari panel penagihan, situs WordPress, atau skrip Anda sendiri: dapatkan kunci API, lakukan panggilan pertama Anda, dan gunakan enam panggilan yang menyusun seluruh integrasi.

Anda menjual kembali hosting kami. Klien Anda adalah milik Anda: harga Anda, faktur Anda, penyedia pembayaran Anda. Ini adalah cara Anda mengoperasikan platform kami dari apa pun yang sudah Anda jalankan — panel penagihan, situs WordPress Anda sendiri, atau skrip.

Apa yang sebenarnya dilihat klien Anda

Sebelum mekanismenya: klien Anda tidak perlu pernah melihat kami. Tiga antarmuka, dan Anda memilih mana yang Anda gunakan.

AntarmukaMilik siapa
Panel hosting, di nama host Anda sendiriTetapkan nama host panel di bawah Menjual Kembali → Merek Anda dan klien Anda masuk di panel.perusahaananda.com dengan logo dan warna Anda. Panel yang sama, alamat Anda.
Situs web Anda sendiriPlugin WordPress menempatkan pencarian domain dan tautan masuk sekali klik di situs Anda, serta menerima pesanan melalui checkout WooCommerce Anda sendiri.
Panel penagihan AndaWHMCS atau HostBill tetap menjadi pintu depan; modul memprovisi di belakangnya dan tombol area klien mengarahkan mereka langsung masuk ke hosting mereka.

⛔ Mana pun yang Anda pilih, Anda adalah pedagang resmi (merchant of record) bagi klien Anda: harga Anda, faktur Anda, nomor PPN Anda, penyedia pembayaran Anda. Kami menagih Anda, sebulan sekali, dengan harga grosir.

Setelah Anda menetapkan nama host panel, masukkan itu ke dalam bidang Alamat panel pada plugin WordPress dan tidak di tempat lain — tautan masuk yang dibuat oleh API ini akan mengikutinya secara otomatis.

Empat jalan masuk

Ada empat jalan masuk, dan semuanya melakukan hal yang sama di belakang layar:

Untuk
Modul WHMCSToko WHMCS
Modul HostBillToko HostBill
Plugin WordPressMenjual dari situs WordPress atau WooCommerce Anda sendiri
APIApa pun lainnya — Blesta, sistem internal, skrip cron

1. Dapatkan kunci API

Di dasbor Anda, buka Kunci API dan buatlah satu. Berikan hanya apa yang dibutuhkannya:

IzinAlasan
org.readMembaca akun klien Anda
sites.createMemprovisi situs
sites.viewMembaca layanan
sites.deleteMenghentikan (terminate)
reseller.viewMencantumkan daftar layanan Anda dan membaca penggunaan
reseller.provisionMenangguhkan, melepaskan penangguhan, dan memasukkan klien

⛔ Jangan berikan integrasi izin reseller.manage. Izin tersebut mengedit daftar harga Anda dan kredensial gateway pembayaran Anda sendiri. reseller.provision hadir justru agar kunci yang Anda tempelkan ke panel penagihan atau situs web tidak membutuhkannya.

Kunci tersebut hanya ditampilkan sekali. Simpan di tempat Anda menyimpan kredensial lainnya — jangan pernah di dalam berkas yang disajikan oleh server web Anda.

2. Lakukan panggilan pertama Anda

curl https://api.zinndigital.com/v1/reseller/services \
  -H "Authorization: Bearer zdk_live_…"

Panggilan tersebut mengembalikan setiap layanan yang telah Anda provisi, satu baris per situs, beserta klien pemiliknya, statusnya, dan biaya yang Anda kenakan untuk itu. Pada akun baru, hasilnya adalah daftar kosong — yang merupakan jawaban yang benar, bukan kesalahan.

3. Seluruh integrasi, dalam enam panggilan

KAPAN                PANGGILAN
pesanan dibayar      POST   /v1/orgs                                   sekali per PELANGGAN
                     POST   /v1/sites                                  sekali per LAYANAN
mereka belum bayar   POST   /v1/reseller/services/{siteId}/suspend
mereka membayar      POST   /v1/reseller/services/{siteId}/unsuspend
mereka membatalkan   DELETE /v1/sites/{siteId}
"masuk ke hosting"   POST   /v1/reseller/services/{siteId}/sso

Provisi terdiri dari dua panggilan, dan kunci sangatlah penting:

# 1. akun pelanggan — dikaitkan dengan id pelanggan ANDA
curl -X POST https://api.zinndigital.com/v1/orgs \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: account-4211" \
  -d '{"type":"customer","name":"Acme Ltd"}'

# 2. situs mereka — dikaitkan dengan id layanan ANDA
curl -X POST https://api.zinndigital.com/v1/sites \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: service-9915" \
  -d '{"org_id":"<from step 1>","product_line":"mainstream","primary_domain":"acme.com"}'

Dua aturan yang memakan biaya jika Anda salah menerapkannya

  1. Kaitkan akun pada PELANGGAN Anda dan situs pada LAYANAN Anda. Pesanan kedua dari seorang pelanggan harus masuk ke akun yang sudah mereka miliki. Jika Anda mengaitkan keduanya pada layanan, satu pelanggan akan berakhir dengan tiga akun yang tidak terkait dan tiga panel terpisah.
  2. Kirimkan Idempotency-Key pada setiap POST, yang dibuat dari id Anda sendiri untuk objek tersebut. Setiap sistem penagihan melakukan percobaan ulang — callback gateway tiba dua kali, admin menjalankan ulang provisi yang gagal, pelanggan mengeklik ganda. Tanpa kunci tersebut, upaya kedua akan membuat situs kedua dan Anda akan ditagih untuk itu.

Tiga respons yang tidak boleh Anda anggap sama menjadi dua

  • unsuspend dapat merespons 409. Itu berarti tim penanganan penyalahgunaan (abuse) kami yang menahan situs tersebut, bukan Anda. Tampilkan pesannya; jangan mencoba ulang.
  • **Menghentikan (terminating) menjadwalkan penghapusan, bukan langsung menghapusnya.** Tanggal akan dikembalikan sebagai pending_deletion_at. Memberi tahu pelanggan bahwa data mereka sudah hilang padahal belum adalah hal yang lebih buruk daripada tidak memberi tahu apa pun.
  • disk_used_bytes bisa bernilai null, dan null bukanlah nol. Itu berarti kami tidak dapat mengukurnya, bukan berarti tidak ada yang digunakan. Lewati saja — jangan menuliskan 0 ke dalam catatan Anda sendiri, atau Anda akan menampilkan bilah penggunaan hijau kepada pelanggan untuk situs yang pengukurannya tidak Anda miliki.

4. Memasukkan klien

POST /v1/reseller/services/{siteId}/sso mengembalikan URL sekali pakai yang mengarahkan klien Anda langsung ke akun mereka sendiri, dalam keadaan sudah masuk.

⛔ Buat tautan saat mereka mengeklik, jangan pernah saat Anda merender halaman. Tautan ini hanya untuk sekali pakai dan kedaluwarsa dalam beberapa menit, sehingga tautan yang ditulis ke dalam halaman akan hangus pada kunjungan halaman pertama dan tertinggal di setiap cache antara Anda dan peramban.

5. Instal modul sebagai gantinya

  • WHMCS — salin modul ke modules/servers/zinn/, tambahkan server yang Password-nya adalah kunci API Anda, dan atur lini produk pada produk tersebut. Tekan Test Connection: modul ini melakukan panggilan nyata dan memberi tahu Anda respons dari platform.
  • HostBill — salin ke includes/modules/Hosting/zinn/ dan hubungkan dengan cara yang sama.
  • WordPress — Zinn® Reseller Toolkit: pencarian domain, tautan masuk ke hosting klien Anda, dan provisi WooCommerce saat pesanan dibayar. Sumber terbuka di <https://github.com/Zinn-Digital/zinn-reseller-toolkit>, atau unduh dari Plugin di dasbor Anda.

6. Mulai beroperasi

Periksa hal-hal berikut sebelum Anda menerima pesanan nyata:

  • Uji koneksi berhasil pada modul, atau perintah curl pertama Anda mengembalikan daftar.
  • Daftar harga Anda telah diatur (Menjual Kembali → Harga Anda).
  • Gateway pembayaran Anda telah terhubung (Menjual Kembali → Gateway pembayaran) — klien membayar kepada Anda, melalui akun Anda sendiri.
  • Rincian perusahaan Anda telah dimasukkan (Menjual Kembali → Perusahaan Anda) sehingga faktur klien Anda mencantumkan entitas hukum dan nomor PPN Anda, bukan milik kami.
  • Anda telah menempatkan satu pesanan nyata secara menyeluruh dari awal hingga akhir dan melihat situs tersebut muncul.

Tempat semua hal lainnya berada

Referensi API lengkap — setiap endpoint, yang dibuat dari spesifikasi kami, beserta izin yang dibutuhkan masing-masing — ada di <https://zinndigital.com/developers/api>.

Terbaru dari blog

Apa yang telah kami tulis tentang hosting, SEO, dan mengelola situs dalam skala besar.

SEO dan Pembangunan Tautan dari Lapisan Hosting: Pandangan Operator Tahun 2026

Bagaimana hosting membentuk pengindeksan dan link equity pada tahun 2026: menjaga halaman tetap terindeks, memeriksa domain lama sebelum mengembangkannya, membangun tautan tanpa jejak mesin pencari, dan pandangan jujur tentang apa yang dapat dan tidak dapat dilakukan infrastruktur untuk SEO.

Baca postingan →

Membuat WordPress Cepat dan Aman: Daftar Periksa Performa dan Plugin

Daftar periksa praktis untuk WordPress yang cepat dan aman: caching tingkat server, object cache per situs, beberapa plugin yang layak dijalankan, menjaga tumpukan teknologi tetap mutakhir, dan halaman WooCommerce yang tidak boleh Anda simpan di cache.

Baca postingan →

Cara Memilih Web Hosting Terkelola di Tahun 2026: Panduan Pembeli

Apa yang sebenarnya membedakan hosting terkelola yang baik dari kotak murah dengan panel kontrol — migrasi, pencadangan, isolasi, caching nyata, dan penskalaan yang jujur — dan cara menilainya sebelum Anda berkomitmen.

Baca postingan →

Baca blog →

Masih mengalami kendala?

Dukungan disertakan pada setiap paket, layanan meja bantuan buka selama 24 jam sehari, dan Anda dapat menulis kepada kami dalam salah satu dari 58 bahasa kami — kami akan menjawab Anda dalam bahasa Anda.

Hubungi dukungan → Semua artikel →