Base ng Kaalaman

Pagbebenta ng Zinn® hosting mula sa iyong sariling mga sistema

Patakbuhin ang Zinn hosting mula sa iyong sariling billing panel, WordPress site o mga script: kumuha ng API key, gawin ang iyong unang tawag, at ang anim na tawag kung saan binubuo ang buong integration.

Ibinabahagi mo ang aming hosting. Ang iyong mga kliyente ay sa iyo: ang iyong mga presyo, ang iyong mga invoice, ang iyong payment provider. Ganito mo patatakbuhin ang aming platform mula sa anumang ginagamit mo na — isang billing panel, ang sarili mong site ng WordPress, o isang script.

Ang talagang nakikita ng iyong mga kliyente

Bago ang mga mekanika: hindi kailanman kailangang makita kami ng iyong mga kliyente. Tatlong surface, at ikaw ang mamimili kung alin ang gagamitin mo.

| Surface | Kanino ito | |---|---| | Ang hosting panel, sa sarili mong hostname | Magtakda ng panel hostname sa ilalim ng Reselling → Your brand at mag-sign in ang iyong mga kliyente sa panel.yourcompany.com kasama ang iyong logo at ang iyong mga kulay. Parehong panel, iyong address. | | Ang iyong sariling website | Ang WordPress plugin ay naglalagay ng domain search at isang one-click sign-in link sa iyong site, at kinukuha ang order sa pamamagitan ng sarili mong WooCommerce checkout. | | Ang iyong billing panel | Ang WHMCS o HostBill ang nananatiling front door; ang module ang nag-a-allocate sa likod nito at ang button sa client-area ang nagpapasok sa kanila nang direkta sa kanilang hosting. |

⛔ Alinman ang piliin mo, ikaw ang merchant of record para sa iyong mga kliyente: ang iyong mga presyo, ang iyong mga invoice, ang iyong VAT number, ang iyong payment provider. Siningilin ka namin, minsan sa isang buwan, sa presyong pakyawan.

Kapag nakapag-set ka na ng panel hostname, ilagay ito sa field na Panel address ng WordPress plugin at sa wala nang iba — ang mga sign-in link na ginagawa ng API na ito ay awtomatiko itong sinusunod.

Ang apat na paraan para makapasok

May apat na paraan para makapasok, at pare-pareho ang ginagawa ng mga ito sa ilalim:

| | Para sa | |---|---| | Ang WHMCS module | Isang shop na WHMCS | | Ang HostBill module | Isang shop na HostBill | | Ang WordPress plugin | Pagbenta mula sa iyong sariling site ng WordPress o WooCommerce | | Ang API | Anumang iba pa — Blesta, isang panloob na sistema, isang cron script |

1. Kumuha ng API key

Sa iyong dashboard, pumunta sa API keys at gumawa ng isa. Ibigay lamang dito ang kailangan nito:

| Pahintulot | Bakit | |---|---| | org.read | Basahin ang iyong mga account ng kliyente | | sites.create | Mag-allocate ng site | | sites.view | Basahin ang isang serbisyo | | sites.delete | Tapusin | | reseller.view | Ilista ang iyong mga serbisyo at basahin ang paggamit | | reseller.provision | I-suspend, i-release, at i-sign in ang isang kliyente |

Huwag ibigay sa isang integration ang reseller.manage. Binabago ng pahintulot na iyon ang iyong price list at ang iyong sariling mga kredensyal ng payment gateway. Umiiral ang reseller.provision para eksaktong hindi na kailanganin ito ng isang key na ipinapaskil mo sa isang billing panel o isang website.

Minsan lamang ipinapakita ang key. Iimbak ito kung saan mo iniimbak ang iyong iba pang mga kredensyal — huwag kailanman sa isang file na sineserbisyuhan ng iyong web server.

2. Gawin ang iyong unang tawag

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

Ibabalik nito ang bawat serbisyong inilaan mo, isang row bawat site, kasama ang kliyente na nagmamay-ari nito, ang status nito, at kung magkano ang singil mo rito. Sa isang bagong account, isa itong bakanteng listahan — na siyang tamang sagot, hindi isang error.

3. Ang buong integration, sa anim na tawag

KAPAG                 TANAWAGAN
binayaran ang order   POST   /v1/orgs                                   minsan bawat CUSTOMER
                      POST   /v1/sites                                  minsan bawat SERVICE
hindi sila nagbayad   POST   /v1/reseller/services/{siteId}/suspend
nagbayad sila         POST   /v1/reseller/services/{siteId}/unsuspend
kinansela nila        DELETE /v1/sites/{siteId}
"mag-log in sa hosting" POST   /v1/reseller/services/{siteId}/sso

Dalawang tawag ang paglalaan, at mahalaga ang mga key:

# 1. ang account ng customer — naka-key sa IYONG customer id
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. ang kanilang site — naka-key sa IYONG service id
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"}'

Dalawang panuntunan na nagkakahalaga ng pera kapag nagkamali ka

  1. I-key ang account sa iyong CUSTOMER at ang site sa iyong SERVICE. Ang pangalawang order ng isang customer ay dapat mapunta sa account na mayroon na sila. I-key ang pareho sa serbisyo at ang isang customer ay magtatapos sa tatlong hindi magkakaugnay na account at tatlong hiwalay na panel.
  2. Magpadala ng Idempotency-Key sa bawat POST, na binuo mula sa iyong sariling id para sa bagay na iyon. Ang bawat billing system ay nagre-retry — dumating nang dalawang beses ang isang gateway callback, muling pinapatakbo ng isang admin ang isang bigong paglalaan, nag-double-click ang isang customer. Kung wala ang key, ang pangalawang pagtatangka ay gagawa ng pangalawang site at sisingilin ka para dito.

Tatlong sagot na hindi mo dapat gawing simple sa dalawa

  • Ang unsuspend ay maaaring sumagot ng 409. Ibig sabihin nito ay hawak ng aming koponan sa pang-aabuso ang site, hindi ikaw. Ipakita ang mensahe; huwag itong i-retry.
  • **Ang pagtatapos ay nag-a- schedule ng pagbura, hindi ito nagsasagawa nito.** Bumabalik ang petsa bilang pending_deletion_at. Mas masahol pa sa walang sinasabi ang sabihin sa isang customer na wala na ang kanilang data kung hindi pa naman.
  • Ang disk_used_bytes ay maaaring maging null, at ang null ay hindi zero. Ibig sabihin nito ay hindi namin nasukat, hindi sa walang ginamit. Laktawan ito — huwag magsulat ng 0 sa iyong sariling mga rekord, o magpapakita ka sa isang customer ng luntiang bar ng paggamit para sa isang site na wala ka namang lehitimong pagbasa.

4. I-sign in ang isang kliyente

Ang POST /v1/reseller/services/{siteId}/sso ay nagbabalik ng isang URL na minsan lang magagamit na direktang naglalagay sa iyong kliyente sa kanilang sariling account, na naka-sign in na.

Gawin ito kapag nag-click sila, huwag kailanman kapag ni-render mo ang page. Ang link ay minsan lang magagamit at nag-e-expire sa loob ng ilang minuto, kaya ang isang link na nakasulat sa isang page ay nasusunog sa unang pagtingin sa page at naiiwan sa bawat cache sa pagitan mo at ng browser.

5. Mag-install na lamang ng module

  • WHMCS — kopyahin ang module sa modules/servers/zinn/, magdagdag ng server na ang Password ay ang iyong API key, at itakda ang linya ng produkto sa produkto. Pindutin ang Test Connection: gumagawa ito ng totoong tawag at sinasabi sa iyo kung ano ang sinabi ng platform.
  • HostBill — kopyahin sa includes/modules/Hosting/zinn/ at ikonekta ito sa parehong paraan.
  • WordPress — ang Zinn® Reseller Toolkit: domain search, isang sign-in link sa hosting ng iyong mga kliyente, at paglalaan ng WooCommerce kapag nabayaran ang isang order. Open source sa <https://github.com/Zinn-Digital/zinn-reseller-toolkit>, o i-download ito mula sa Plugins sa iyong dashboard.

6. Magsimula nang live

Suriin ang mga ito bago ka kumuha ng totoong order:

  • Pumasa ang pagsubok sa koneksyon sa module, o ang iyong unang curl ay nagbabalik ng isang listahan.
  • Naitakda ang iyong price list (Reselling → Your prices).
  • Nakakonekta ang iyong payment gateway (Reselling → Payment gateways) — binabayaran ka ng iyong mga kliyente, sa pamamagitan ng iyong sariling account.
  • Naroon ang mga detalye ng iyong kumpanya (Reselling → Your company) kaya ang mga invoice ng iyong kliyente ay nagdadala ng iyong legal na entidad at VAT number, hindi sa amin.
  • Naglagay ka na ng isang totoong order mula simula hanggang wakas at pinanood ang paglitaw ng site.

Kung nasaan ang lahat ng iba pa

Ang kumpletong sanggunian ng API — bawat endpoint, na binuo mula sa aming detalye, kasama ang pahintulot na kailangan ng bawat isa — ay nasa <https://zinndigital.com/developers/api>.

Na-stuck pa rin?

Kasama ang suporta sa bawat plano at may mga sagot sa iyong sariling wika.

Makipag-ugnayan sa suporta Lahat ng artikulo