מאגר ידע

מכירת אחסון של Zinn® מהמערכות שלך

נהל את האחסון של Zinn ישירות מלוח החיובים, מאתר ה-WordPress או מהסקריפט שלך: קבל מפתחת API, בצע את הקריאה הראשונה שלך, ואת ששת הקריאות שמהן מורכב כל האינטגרציה.

אתם מוכרים מחדש את האחסון שלנו. הלקוחות שלכם הם שלכם: המחירים שלכם, החשבוניות שלכם, ספק התשלומים שלכם. כך מנהלים את הפלטפורמה שלנו מכל מה שאתם כבר מריצים — פאנל חיוב, אתר WordPress משלכם או סקריפט.

מה הלקוחות שלכם רואים בפועל

לפני המכניקה: הלקוחות שלכם לעולם לא חייבים לראות אותנו. ישנם שלושה ממשקים, ואתם בוחרים במה להשתמש.

| ממשק | של מי הוא | |---|---| | פאנל האחסון, בשם המארח משלכם | הגדירו שם מארח לפאנל תחת מכירה מחדש ← המותג שלכם והלקוחות שלכם יתחברו בכתובת panel.yourcompany.com עם הלוגו והצבעים שלכם. אותו פאנל, הכתובת שלכם. | | האתר משלכם | תוסף ה-WordPress מציב חיפוש דומיין וקישור להתחברות בלחיצה אחת באתר שלכם, ומקבל את ההזמנה דרך קופה משלכם ב-WooCommerce. | | פאנל החיוב שלכם | WHMCS או HostBill נשארים כדלת הכניסה; המודול מקצה משאבים מאחורי הקלעים, והכפתור באזור הלקוחות מחבר אותם ישירות לאחסון שלהם. |

⛔ לא משנה במה תבחרו, אתם בית העסק הרשמי (Merchant of Record) עבור הלקוחות שלכם: המחירים שלכם, החשבוניות שלכם, מספר העוסק/מע"מ שלכם, ספק התשלומים שלכם. אנחנו מחייבים אתכם, פעם בחודש, במחירי סיטונאות.

ברגע שהגדרתם שם מארח לפאנל, זינו אותו בשדה כתובת הפאנל בתוסף ה-WordPress ולא בשום מקום אחר — קישורי ההתחברות ש-API זה מנפיק יפעלו לפיו באופן אוטומטי.

ארבע דרכי הכניסה

ישנן ארבע דרכי כניסה, וכולן מבצעות את אותו הדבר מאחורי הקלעים:

| | עבור | |---|---| | מודול WHMCS | חנות WHMCS | | מודול HostBill | חנות HostBill | | תוסף WordPress | מכירה מאתר WordPress או WooCommerce משלכם | | ה-API | כל דבר אחר — Blesta, מערכת פנימית, סקריפט cron |

1. הקצאת מפתח API

בלוח הבקרה שלכם, עבורו אל מפתחות API וצרו מפתח. העניקו לו רק את ההרשאות הדרושות לו:

| הרשאה | סיבה | |---|---| | org.read | קריאת חשבונות הלקוחות שלכם | | sites.create | הקצאת אתר | | sites.view | קריאת שירות | | sites.delete | סיום התקשרות/מחיקה | | reseller.view | הצגת רשימת השירותים שלכם וקריאת נתוני שימוש | | reseller.provision | השעיה, שחרור וחיבור לקוח למערכת |

אל תעניקו לאינטגרציה את ההרשאה reseller.manage. הרשאה זו עורכת את מחירון המוצרים שלכם ואת אישורי שער התשלומים משלכם. ההרשאה reseller.provision קיימת בדיוק כדי שמפתח שאתם מדביקים בפאנל חיוב או באתר אינטרנט לא יידרש לה.

המפתח מוצג פעם אחת בלבד. שמרו אותו במקום שבו אתם שומרים את שאר אישורי הגישה שלכם — לעולם לא בקובץ ששרת הרישום שלכם מגיש.

2. ביצוע הקריאה הראשונה שלכם

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

קריאה זו מחזירה כל שירות שהקציתם, שורה אחת לכל אתר, יחד עם הלקוח אליו הוא שייך, הסטטוס שלו, והסכום שאתם גובים עבורו. בחשבון חדש מדובר ברשימה ריקה — וזוהי התשובה הנכונה, לא שגיאה.

3. כל האינטגרציה, בשש קריאות

מתי                 קריאה
הוזמנה שולמה        POST   /v1/orgs                                   פעם אחת לכל לקוח (CUSTOMER)
                    POST   /v1/sites                                  פעם אחת לכל שירות (SERVICE)
הם לא שילמו         POST   /v1/reseller/services/{siteId}/suspend
הם משלמים           POST   /v1/reseller/services/{siteId}/unsuspend
הם מבטלים           DELETE /v1/sites/{siteId}
"התחברות לאחסון"    POST   /v1/reseller/services/{siteId}/sso

הקצאת משאבים מורכבת משתי קריאות, ולמפתחות יש חשיבות מכרעת:

# 1. חשבון הלקוח — מבוסס על מזהה הלקוח שלכם (YOUR 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. האתר שלהם — מבוסס על מזהה השירות שלכם (YOUR 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"}'

שני כללים שעולים בכסף כשטועים בהם

  1. קשרו את החשבון למזהה הלקוח (CUSTOMER) שלכם ואת האתר למזהה השירות (SERVICE) שלכם. הזמנה שנייה של לקוח חייבת להגיע לחשבון שכבר קיים עבורו. אם תבשסו את שניהם על השירות, לקוח אחד יסיים עם שלושה חשבונות שאינם קשורים ושלושה פאנלים נפרדים.
  2. שלחו Idempotency-Key בכל בקשת POST, שנוצר מהמזהה משלכם עבור הרכיב. כל מערכת חיוב מבצעת ניסיונות חוזרים — קריאת חזרה משער תשלומים מגיעה פעמיים, מנהל מערכת מריץ מחדש הקצאה שנכשלה, או לקוח לוחץ לחיצה כפולה. ללא המפתח, הניסיון השני ייצור אתר נוסף ותחויבו עבורו.

שלוש תשובות שאינכם מורשים לשטח לשתיים

  • הפעולה unsuspend יכולה להחזיר תשובה 409. משמעות הדבר היא שצוות האבטחה/שימוש לרעה שלנו מחזיק את האתר, ולא אתם. הציגו את ההודעה; אל תנסו שוב.
  • **סיום התקשרות מזמין מחיקה, הוא אינו מבצע אותה באופן מיידי.** התאריך מוחזר כ-pending_deletion_at. לומר ללקוח שהמידע שלו כבר נמחק כשזה לא המצב, גרוע יותר מלא לומר לו דבר.
  • הערך של disk_used_bytes יכול להיות null, ו-null אינו אפס. פירוש הדבר הוא שלא יכולנו למדוד, ולא שלא נעשה שימוש. דלגו על כך — אל תכתבו 0 ברישומים שלכם, אחרת תציגו ללקוח סרגל שימוש ירוק עבור אתר שאין לכם קריאה לגביו.

4. חיבור לקוח למערכת

הקריאה POST /v1/reseller/services/{siteId}/sso מחזירה כתובת URL לשימוש חד-פעמי שמעבירה את הלקוח שלכם ישירות לחשבון שלו, כשהוא כבר מחובר.

הנפיקו אותה כשהם לוחצים, לעולם לא בעת רנדור הדף. הקישור מיועד לשימוש חד-פעמי ותוקפו פג תוך דקות, ולכן קישור שנכתב תוך כדי טעינת דף ינוצל כבר בצפייה הראשונה בדף ויישאר בכל זיכרון מטמון (cache) בינכם לבין הדפדפן.

5. התקנת מודול במקום זאת

  • WHMCS — העתיקו את המודול אל modules/servers/zinn/, הוסיפו שרת שבו ה-Password הוא מפתח ה-API שלכם, והגדירו את ליין המוצרים במוצר. לחצו על Test Connection: המערכת תבצע קריאה אמיתית ותספר לכם מה הפלטפורמה השיבה.
  • HostBill — העתיקו אל includes/modules/Hosting/zinn/ וחברו אותו באותה הדרך.
  • WordPress — הערכה Zinn® Reseller Toolkit: חיפוש דומיין, קישור להתחברות לאחסון של הלקוחות שלכם, והקצאת משאבים ב-WooCommerce כאשר הזמנה שולמה. קוד פתוח בכתובת <https://github.com/Zinn-Digital/zinn-reseller-toolkit>, או להורדה מ-תוספים בלוח הבקרה שלכם.

6. עלייה לאוויר

בדקו את הדברים הבאים לפני שאתם מקבלים הזמנה אמיתית:

  • בדיקת החיבור עוברת במודול, או שקריאת ה-curl הראשונה שלכם מחזירה רשימה.
  • מחירון המוצרים שלכם מוגדר (מכירה מחדש ← המחירים שלכם).
  • שער התשלומים שלכם מחובר (מכירה מחדש ← שערי תשלום) — הלקוחות שלכם משלמים לכם, דרך החשבון שלכם.
  • פרטי החברה שלכם מוזנים (מכירה מחדש ← החברה שלכם) כך שחשבוניות הלקוח שלכם ישאו את הרישום המשפטי ומספר העוסק/מע"מ שלכם, ולא שלנו.
  • ביצעתם הזמנה אמיתית אחת מקצה לקצה וראיתם את האתר נוצר.

איפה נמצא כל השאר

תיעוד ה-API המלא — כל נקודת קצה, המיוצרת מהמפרט שלנו, יחד עם ההרשאה שכל אחת צריכה — נמצא בכתובת <https://zinndigital.com/developers/api>.

עדיין תקועים?

התמיכה כלולה בכל תוכנית והמענים ניתנים בשפה שלך.

צור קשר עם התמיכה כל המאמרים