База знања

Продајте Zinn® хостинг из WHMCS-а

Инсталирајте бесплатни модул за провизионисање Zinn Digital® у WHMCS: API кључ и седам дозвола које су му потребне, где директоријум модула мора да се налази и зашто је његово име важно, поља производа и шта свако дугме у WHMCS заправо ради.

Модул Zinn Digital® претвара сопствену дугмад система WHMCS у стварне акције на нашој платформи. Поруџбина врши подешавање и активирање хостинга Вашег клијента. Аутоматизација система WHMCS за неизмирене рачуне га суспендује. Означавање рачуна као плаћеног га активира. Отказивање заказује брисање. А Ваш клијент добија дугме Пријавите се на контролни панел хостинга у свом корисничком налогу које га директно пријављује.

Бесплатан је, лиценциран под GPL-2.0-or-later, и нема привилеговану путању ка нашој платформи: сваки позив који упути јесте документована крајња тачка коју можете и сами позвати помоћу свог API кључа.

Пре него што почнете

Потребне су Вам две ствари, а она друга често људе ухвати неспремне.

  1. Zinn® дистрибутерски (reseller) налог са активним програмом. Региструјте се на
  2. zinndigital.com и укључите дистрибуцију (reselling).

  3. Дистрибутерски план са квотом за сајтове. Сајтови које Ваши клијенти поруче рачунају се на Вашем
  4. плану, тако да Вам је потребан план са слободним местима.

⚠️ Test Connection Вам не може рећи да ли ће поруџбина успети. Ова функција само чита Ваш програм и не активира ништа, па пријављује исправан active налог који још увек не може ништа да прода. Ако Ваша прва поруџбина не успе уз поруку "This organization has no hosting plan, so it cannot host a site yet", управо се то догодило — купите или продужите свој дистрибутерски план и поновите поруџбину. Са модулом је све у реду.

1. Направите API кључ

На својој Zinn® командној табли отворите API keys и направите један са тачно ових једанаест дозвола:

| Дозвола | Зашто је потребна | | -------------------- | ----------------------------------------------------------- | | org.create | Отварање Zinn® налога Вашег клијента приликом његове прве поруџбине. | | org.read | Очитавање налога Ваших клијената. | | sites.create | Подешавање и активирање сајта. | | sites.view | Очитавање услуге и њене потрошње. | | sites.delete | Трајно гашење (терминација). | | reseller.view | Листирање онога што сте продали, као и очитавање диска и протока. | | reseller.provision | Суспендовање, активирање, пријављивање клијента, постављање његовог плана и промена његовог пакета. | | billing.view | Очитавање цене надоградње пре него што се она изврши. | | sites.manage | Брисање кеша и прављење резервне копије путем дугмади. | | sites.panel_access | Промена лозинке за WordPress администратора. | | hosting.php.manage | Промена верзије PHP-а приликом надоградње или деградације услуге. |

⛔ Немојте доделити дозволу reseller.manage. Кључ унет у систем за наплату треба да има могућност суспензије клијента због неплаћања и његовог пријављивања. Он не би требало да има могућност очитавања и измене параметара Ваших сопствених платних пролаза. Дозвола reseller.provision постоји управо зато да не бисте морали да доделите ову ширу дозволу. ⛔ Дозвола org.create није опциона. Без ње модул може да чита Ваше налоге али не може да отвори нови, па функција Test Connection пролази, а прва поруџбина враћа статус 403. ⛔⛔ Доделите читаву табелу и имајте на уму да Вам Test Connection не може рећи ако то нисте учинили. Она чита Ваш дистрибутерски програм и не активира ништа, па ће показати зелено чак и за кључ коме недостаје било која од ових дозвола. Уместо тога, месецима касније од корисника ћете добити грешку 403 баш за ону операцију коју покрива дозвола која недостаје.

2. Инсталирајте модул

  1. Преузмите модул и распакујте га.
  2. Отпремите директоријум zinn у своју WHMCS инсталацију тако да фајл модула заврши на
  3. modules/servers/zinn/zinn.php.

⛔ Директоријум се мора звати zinn. WHMCS изводи називе функција модула за подешавање и активирање из назива његовог директоријума, па преименовање у zinn-whmcs или zinndigital ствара модул који WHMCS приказује на листи, дозвољава Вам да га изаберете, и затим га никада не позива — без икакве грешке било где. Zip архива се већ распакује под исправним именом; само је немојте преименовати.

3. Додајте сервер

У систему WHMCS: Configuration → System Settings → Servers → Add New Server.

  • Name: било шта, нпр. Zinn Digital®
  • Hostname: api.zinndigital.com
  • Type: Zinn Digital®
  • Password: Ваш API кључ из 1. корака

⛔ Кључ се уноси у поље Password, које WHMCS чува шифровано. Немојте га уносити у опцију за конфигурацију производа — оне стоје у бази података као обичан текст и видљиве су сваком администратору, а ови приступни подаци могу креирати и уништити хостинг Ваших клијената.

Притисните Test Connection. Ова функција упућује стварни позив и јавља шта је наша платформа вратила, уместо да само проверава да ли су поља попуњена.

4. Направите производ

Configuration → System Settings → Products/Services, а затим подесите Module Settings на сервер који сте управо додали. Поља су:

| Поље | Обавезно | Шта представља | | ---------------- | -------- | -------------------------------------------------------------------------- | | Product line | да | Zinn® линија коју продајете — mainstream (managed WordPress), footprint_free, wordpress, linux, cloud, agency, app_hosting, ai_hosting, lms_hosting, managed_database, vector_hosting, zinn_compute, fleet_linux, fleet_enterprise, mail или reseller. | | Stack | да | Шта се подиже: wordpress (подразумевано), woocommerce, php, static, node, one_click, headless_cms, nextcloud или owncloud. | | Application | не | Само за окружења one_click и headless_cms — коју апликацију инсталирати. Навођење апликације на било ком другом окружењу се одбија, јер то окружење већ одређује шта се инсталира. | | PHP version | не | нпр. 8.3. Оставите празно за подразумевану вредност линије. Верзија коју линија не нуди бива одбијена уз листу верзија које нуди. | | Plan code | да | Zinn® план који овај производ продаје. Команда GET /v1/reseller/prices даје списак Ваших планова. Поруџбина без овога се одбија — погледајте упозорење испод. | | Billing interval | не | monthly (подразумевано) или annual — интервал по коме се формира Ваша велепродајна ставка за овог клијента. Оно што наплаћујете сопственом клијенту подешава се на производу у систему WHMCS и остаје непромењено. |

⛔⛔ Код плана (Plan code) је обавезан, и поруџбина без њега се намерно одбија. Све до 2026-09-01 ово поље је било само декоративно и ништа га није читало, па је модул наручивао хостинг који није носио никакав план — а свака последица тога била је неприметна. Ваш велепродајни извештај се формира на основу активних претплата Ваших клијената, па није било ставке за ту услугу и Вама није фактурисано ништа све док је она радила; Ваш клијент није наследио никакве ресурсе, па на његов сајт није примењена никаква квота за диск или фајлове; а опција Change Package није имала шта да промени, па се надоградња коју сте продали није могла извршити. Сајт је све време био активиран и функционисао је савршено.

Модул сада уместо тога одбија поруџбину, јер не постоји сигуран план који би могао да претпостави: таква претпоставка би активирала хостинг на плану који нисте изабрали и за који можда нисте одредили цену, и — за разлику од одбијања, које видите одмах — то би испливало на површину тек када би стигао извештај, ако и тада.

Подесите Auto Setup на опцију која Вам више одговара — модул је идемпотентан у односу на идентификатор WHMCS услуге, па поновљени покушај активирања враћа исти сајт уместо да Вам наплати други.

Шта свака WHMCS акција ради

| WHMCS акција | Шта се дешава на нашој страни | | --------------------------- | ---------------------------------------------------------------------------------------- | | Create | Креира Zinn® налог клијента (или поново користи онај који већ има) и активира његов сајт. | | Suspend | Ставља сајт на чекање због неплаћања. Садржај се задржава; ништа се не брише. | | Unsuspend | Укида Вашу суспензију. | | Terminate | Заказује брисање сајта, уз отказни рок. Датум се приказује у корисничком налогу. | | Usage update | Освежава податке о диску и протоку за сваку услугу, једном дневно. | | Log in to hosting panel | Отвара једнократни линк за пријаву који директно води у контролни панел Вашег клијента. | | Change Package | Надограђује или деградира услугу. Мења пакет, као и PHP верзију ако нови производ наводи неку. | | Change Password | Поставља лозинку WordPress администратора. Ово поље се не појављује на окружењима која немају такав налог. | | Renew | Потврђује да услуга и даље постоји. Zinn® хостинг је континуиран, тако да нема удаљеног рока који треба продужити. | | Sync Usage / Purge Cache / Take Backup | Дугмад на администраторској страници услуге. Ваш клијент добија Purge Cache и Take Backup у свом корисничком налогу. | | Service tab | Статус, план, диск, проток, заказано брисање и податак о томе ко је поставио суспензију. | | Import | Функција ListAccounts чита сваку страницу, тако да увоз података не може тихо да се прекине на првој. |

Надоградње: ко коме наплаћује

Zinn® никада не издаје рачун Вашем клијенту, ни приликом поруџбине ни приликом надоградње. Ви му рачун испостављате преко система WHMCS; ми наплаћујемо Вама, на Вашем велепродајном извештају. Према томе, опција Change Package мења права Вашег клијента и ставку на Вашем следећем извештају, и не дира платне картице — WHMCS је већ наплатио новац од Вашег клијента и обрачунао сопствену сразмерну надокнаду (прорачун).

Друга услуга истог клијента. На истом плану, то је још један сајт у оквиру квоте за сајтове тог плана, и ништа се додатно не одобрава. На другачијем плану поруџбина се одбија: замена активног плана оставила би једну од те две услуге ненаплаћеном. Или продајте обе услуге на истом плану, или подесите клијента као засебан кориснички запис у систему WHMCS.

Опција Change Password постоји само за WordPress. Zinn® хостинг нема једну јединствену „лозинку услуге“ — Ваш клијент приступа свом панелу помоћу дугмета за пријаву — а php или static сајт нема апликативни налог који би се мењао. WHMCS у потпуности скрива ово поље уместо да приказује оно које не може да функционише.

Три одговора која не смете свести на два

  • Unsuspend може одговорити одбијањем. То значи да је сајт суспендовао наш тим за спречавање злоупотреба,
  • а не Ви, и ниједан панел за наплату га не може активирати. Порука то јасно каже; покажите је свом администратору уместо да покушавате поново.

  • Terminate заказује брисање, не извршава га моментално. Датум се враћа као вредност
  • pending_deletion_at и кориснички налог га приказује. Рећи кориснику да су његови подаци већ обрисани када то није случај горе је него не рећи му ништа.

  • Диск и проток могу бити непознати, а непознато није нула. Када нисмо могли да очитамо
  • податке, модул не дира постојећу вредност уместо да упише 0 — у супротном би WHMCS Вашем кориснику приказао умирујућу празну траку потрошње за сајт за који немамо очитавање.

Решавање проблема

Test Connection пролази, а прва поруџбина не успева уз грешку о дозволама. API кључу недостаје org.create. Модул мора да отвори налог клијента пре него што може да направи његов сајт.

Поруџбина не успева уз поруку да организација нема хостинг план. Ваш дистрибутерски план нема преосталих места за сајтове, или га још увек немате. Погледајте одељак Пре него што почнете изнад.

Поруџбина не успева уз помињање окружења (stack). Поље Stack на производу је празно или наводи нешто што ми не подржавамо. Поставите га на wordpress, осим ако не продајете нешто друго.

Отказивања не успевају. Уверите се да користите верзију модула 1.0.0 или новију. Раније верзије нису слале потврду о брисању и свака терминација је била одбијена, што је остављало услугу активном и наплативом.

Одбијање које наводи конкретно поље. Наше грешке при валидацији наводе поље и разлог у заградама након поруке, нпр. (php_version: 7.2 is not offered on this product line). То је део на основу кога можете деловати — реченица испред њега је намерно генеричка.

Проверите своје преузимање

Свака архива се испоручује преко TLS-а са нашег сопственог домена и никада се не преусмерава на хост треће стране. Њен SHA-256 контролни збир је одштампан поред линка за преузимање на страници за преузимање. Упоредите га након преузимања:

  • macOS или Linux: shasum -a 256 zinn-whmcs-1.0.0.zip
  • Windows: certutil -hashfile zinn-whmcs-1.0.0.zip SHA256

Не користите WHMCS?

Постоји HostBill модул и једнофајлни PHP клијент за све остало, оба бесплатна и оба на истој страници за преузимање. Свака крајња тачка коју модули користе налази се у API документацији.

Најновије са блога

О чему смо писали када је реч о хостингу, SEO-у и вођењу сајтова великих размера.

SEO и изградња линкова са хостинг слоја: поглед оператера за 2026. годину

Како хостинг утиче на индексирање и вредност линкова у 2026. години: одржавање страница индексираним, провера старих домена пре израде сајтова на њима, изградња линкова без отиска (footprint-а) и искрен осврт на то шта инфраструктура може, а шта не може да учини за SEO.

Прочитајте чланак →

Како учинити WordPress брзим и безбедним: Контролна листа за перформансе и прикључке

Практична контролна листа за брз и безбедан WordPress: кеширање на нивоу сервера, кеш објеката по сајту, неколицина додатака вредних коришћења, одржавање стека ажурним и WooCommerce странице које никада не смете кеширати.

Прочитајте чланак →

Како изабрати управљани веб-хостинг у 2026. години: Водич за купце

Шта заправо разликује добар управљани хостинг од јефтиног сервера са контролним панелом — миграције, резервне копије, изолација, право кеширање и поштено скалирање — и како да то процените пре него што се обавежете.

Прочитајте чланак →

Прочитајте блог →

И даље сте заглављени?

Подршка је укључена у сваки план, служба је отворена 24 сата дневно и можете нам писати на било ком од наших 58 језика — одговарамо вам на вашем језику.

Контактирајте подршку → Сви чланци →