Ön értékesíti tovább a tárhelyünket. Az ügyfelek az Önéi: az Ön árai, az Ön számlái, az Ön fizetési szolgáltatója. Így vezérelheti a platformunkat bármilyen meglévő rendszerből — legyen az egy számlázópanel, a saját WordPress-webhelye vagy egy parancsfájl.
Amit az ügyfelei valójában látnak
A működési részletek előtt: az ügyfeleinek soha nem kell látniuk minket. Három felület áll rendelkezésre, és Ön választja ki, melyiket használja.
| Felület | Kié |
|---|
| A tárhelykezelő panel a saját hosztnevén | Állítson be egy panel-hosztnevet a Viszonteladás → Saját márka menüpontban, és az ügyfelei a panel.azoncege.hu címen jelentkezhetnek be az Ön logójával és színeivel. Ugyanaz a panel, az Ön címén. |
| A saját weboldala | A WordPress-bővítmény elhelyezi a doménkeresést és az egykattintásos bejelentkezési hivatkozást a webhelyén, és a megrendelést a saját WooCommerce-pénztárán keresztül dolgozza fel. |
| A számlázópanele | A WHMCS vagy a HostBill marad a belépési pont; a modul a háttérben létesíti a szolgáltatást, az ügyfélfiókban található gomb pedig közvetlenül a tárhelyükre lépteti be őket. |
⛔ Bármelyiket is választja, az ügyfelei felé Ön az eladó (merchant of record): az Ön árai, az Ön számlái, az Ön adószáma, az Ön fizetési szolgáltatója. Mi Önnek számlázunk havonta egyszer, nagykereskedelmi áron.
Miután beállította a panel hosztnevét, írja be azt a WordPress-bővítmény Panel címe mezőjébe, és sehova máshova — az ezen API által generált bejelentkezési hivatkozások automatikusan ezt követik.
A négy integrációs útvonal
Négyféleképpen csatlakozhat, és a háttérben mindegyik ugyanazt végzi el:
| Cél |
|---|
| A WHMCS-modul | WHMCS-alapú áruház |
| A HostBill-modul | HostBill-alapú áruház |
| A WordPress-bővítmény | Értékesítés a saját WordPress- vagy WooCommerce-webhelyéről |
| Az API | Bármi más — Blesta, saját fejlesztésű rendszer, cron-parancsfájl |
1. Szerezzen be egy API-kulcsot
A vezérlőpultján lépjen az API-kulcsok menüpontra, és hozzon létre egyet. Csak a szükséges jogosultságokat adja meg hozzá:
| Jogosultság | Cél |
|---|
org.read | Az ügyfélfiókok olvasása |
sites.create | Webhely létesítése |
sites.view | Szolgáltatás olvasása |
sites.delete | Megszüntetés |
reseller.view | Szolgáltatások listázása és a használat olvasása |
reseller.provision | Felfüggesztés, feloldás és ügyfél beléptetése |
⛔ Ne adjon egy integrációnak reseller.manage jogosultságot. Ez a jogosultság módosítja az Ön árlistáját és a saját fizetésikapu-hitelesítőadatait. A reseller.provision pontosan azért létezik, hogy a számlázópanelbe vagy webhelyre beillesztett kulcsnak ne legyen szüksége erre.
A kulcs csak egyszer jelenik meg. Tárolja ott, ahol a többi hitelesítő adatát tartja — soha ne olyan fájlban, amelyet a webszervere kiszolgál.
2. Indítsa el az első hívást
curl https://api.zinndigital.com/v1/reseller/services \
-H "Authorization: Bearer zdk_live_…"
Ez visszaadja az összes Ön által létesített szolgáltatást, webhelyenként egy sorban, a hozzá tartozó ügyféllel, az állapotával és az Ön által felszámított díjjal. Új fiók esetén ez egy üres lista — ami a helyes válasz, nem hiba.
3. A teljes integráció hat hívásban
MIKOR HÍVÁS
egy rendelést kifizettek POST /v1/orgs ÜGYFELENKÉNT egyszer
POST /v1/sites SZOLGÁLTATÁSONKÉNT egyszer
nem fizettek POST /v1/reseller/services/{siteId}/suspend
fizetnek POST /v1/reseller/services/{siteId}/unsuspend
lemondják DELETE /v1/sites/{siteId}
"bejelentkezés a tárhelyre" POST /v1/reseller/services/{siteId}/sso
A létesítés két hívásból áll, és a kulcsok számítanak:
# 1. az ügyfél fiókja — az ÖN ügyfél-azonosítójához rendelve
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. az ő webhelyük — az ÖN szolgáltatás-azonosítójához rendelve
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"}'
Két szabály, amely pénzbe kerül, ha elrontja őket
- Rendelje a fiókot az ÜGYFÉLHEZ, a webhelyet pedig a SZOLGÁLTATÁSHOZ. Egy ügyfél második megrendelésének a már meglévő fiókjába kell kerülnie. Ha mindkettőt a szolgáltatáshoz rendeli, egy ügyfél végül három független fiókkal és három különálló panellel rendelkezik majd.
- Küldjön egy
Idempotency-Key fejlécet minden POST kérésnél, az adott elemhez tartozó saját azonosítójából képezve. Minden számlázási rendszer újrapróbálkozik — egy fizetési kapu visszahívása kétszer érkezik be, egy adminisztrátor újra lefuttat egy sikertelen létesítést, egy ügyfél duplán kattint. A kulcs nélkül a második kísérlet egy második webhelyet hoz létre, és ezt ki is számlázzuk Önnek.
Három válasz, amelyet tilos kettőre összevonni
- Az
unsuspend 409-es választ adhat. Ez azt jelenti, hogy a visszaéléseket kezelő csapatunk zárolta a webhelyet, nem Ön. Jelenítse meg az üzenetet; ne próbálkozzon újra.
- **A megszüntetés ütemezi a törlést, nem hajtja végre azonnal.** A dátum
pending_deletion_at értékként érkezik vissza. Azt mondani az ügyfélnek, hogy az adatai már törlődtek, amikor még nem, rosszabb, mintha semmit sem mondana.
- A
disk_used_bytes értéke lehet null, és a null nem egyenlő a nullával. Ez azt jelenti, hogy nem tudtuk megmérni, nem azt, hogy semmi sem volt használatban. Hagyja figyelmen kívül — ne írjon 0-t a saját nyilvántartásaiba, különben zöld használati sávot mutat egy olyan webhelynél az ügyfélnek, amelyről nincs mérési adata.
4. Ügyfél beléptetése
A POST /v1/reseller/services/{siteId}/sso egy egyszer használatos URL-t ad vissza, amely közvetlenül a saját fiókjába lépteti be az ügyfelét, bejelentkezett állapotban.
⛔ Akkor hozza létre, amikor rákattintanak, soha ne az oldal renderelésekor. A hivatkozás egyszer használatos és percek alatt lejár, így az oldalba beírt link már az első oldalmegtekintéskor elhasználódik, és ott marad minden gyorsítótárban Ön és a böngésző között.
5. Modul telepítése alternatívaként
- WHMCS — másolja a modult a
modules/servers/zinn/ könyvtárba, adjon hozzá egy szervert, amelynek a Jelszó mezője az Ön API-kulcsa, és állítsa be a termékvonalat a terméken. Kattintson a Kapcsolat tesztelése gombra: ez egy valódi hívást indít, és megjeleníti a platform válaszát.
- HostBill — másolja az
includes/modules/Hosting/zinn/ könyvtárba, és csatlakoztassa ugyanúgy.
- WordPress — a Zinn® Reseller Toolkit: doménkeresés, bejelentkezési hivatkozás az ügyfelei tárhelyére, és WooCommerce-létesítés egy megrendelés kifizetésekor. Nyílt forráskódúként elérhető a <https://github.com/Zinn-Digital/zinn-reseller-toolkit> címen, vagy letölthető a vezérlőpultja Bővítmények menüpontjából.
6. Élesítés
A valódi megrendelések fogadása előtt ellenőrizze az alábbiakat:
- A kapcsolatteszt sikeres a modulban, vagy az első
curl hívása listával tér vissza.
- Az árlistája be van állítva (Viszonteladás → Saját árak).
- A fizetési kapuja csatlakoztatva van (Viszonteladás → Fizetési kapuk) — az ügyfelei Önnek fizetnek, a saját fiókján keresztül.
- A vállalati adatai meg vannak adva (Viszonteladás → Saját cég), így az ügyfélszámlákon az Ön jogi személye és adószáma szerepel, nem a miénk.
- Végrehajtott egy teljes, valós megrendelést az elejétől a végéig, és meggyőződött a webhely létrejöttéről.
Hol található minden más
A teljes API-referencia — minden végpont, a specifikációnkból generálva, a hozzájuk szükséges jogosultságokkal együtt — a <https://zinndigital.com/developers/api> címen érhető el.