מדריך מעשי ל-API של Hyp Pay, לשעבר YaadPay: איך APISign יוצר ומאמת דף תשלום, איך getToken ו-action=soft מחייבים כרטיס שמור, ומתי לתת ל-Hyp לנהל את החיוב החוזר עם HK=True.
עיקרי הדברים
- כל קריאה ל-Hyp Pay היא GET לכתובת https://pay.hyp.co.il/p/ עם Masof, KEY ו-PassP במחרוזת השאילתה, ולכן היא חייבת לרוץ בשרת שלכם.
- דף תשלום נחתם עם APISign What=SIGN, והפניית ההצלחה מאומתת עם APISign What=VERIFY, עם הפרמטרים באותו סדר.
- הטוקן לא מגיע בהפניה: getToken מחזיר Token בן 19 ספרות ו-Tokef, ושניהם נדרשים כדי לחייב עם action=soft.
- HK=True נותן ל-Hyp להריץ חיוב חוזר בסכום קבוע ומחזיר HKId; סכום משתנה או מחזור מותאם אומרים שאתם מריצים את לוח הזמנים בעצמכם.
ה-API של Hyp Pay, שנקרא בעבר YaadPay (יעד שריג), הוא אוסף בקשות GET לכתובת https://pay.hyp.co.il/p/, שנושאות במחרוזת השאילתה את מספר המסוף (Masof), מפתח ה-API (KEY) וסיסמת ה-API (PassP). השרת שלכם חותם על דף תשלום, הלקוח משלם בדף של Hyp, והשרת מאמת את התוצאה, שולף טוקן לכרטיס ומחייב אותו שוב בהמשך.
Hyp מפרסמת היום את תיעוד המפתחים שלה ב-developers.hyp.co.il, בחלוקה לשני מוצרים: Hyp Pay, לשעבר YaadPay, ו-Hyp Enterprise, לשעבר Hyp CreditGuard. כשכתבנו על יעד שריג ופלאקארד, התיעוד הזה לא היה נגיש לציבור. עכשיו הוא נגיש, והמדריך מתמקד בצד של Hyp Pay: דף התשלום, טוקנים, חיוב חוזר וזיכויים.
להתחיל עם ה-API של Hyp: פרטי גישה, מסוף בדיקה ותיעוד
לקריאה הראשונה ל-API של Hyp צריך שלושה ערכים מ-Hyp והגדרה אחת בפורטל. צוות ההקמה של Hyp (ipos@hyp.co.il) שולח במייל את מספרי המסופים ואת פרטי הכניסה לפורטל, מסוף אחד וחשבון פורטל אחד לכל סביבה. מפתח ה-API וסיסמת ה-API נמצאים אחר כך בפורטל עצמו, לא במייל.
| מה | מאיפה זה מגיע |
|---|---|
Masof | מספר המסוף, מהמייל של צוות ההקמה |
KEY | בפורטל של Hyp: הגדרות, ואז "דף תשלום ו-API", באזור "אימות" |
PassP | באותו מסך. זו סיסמת ה-API, לא הסיסמה שבה נכנסים לפורטל |
| כתובת הצלחה | באותן הגדרות: "הפנייה לאחר עסקה", לינק מותאם אישית תחת עסקה שהצליחה |
| מסוף בדיקה | המספר שלו מתחיל ב-00100 |
| כתובת הקריאות | https://pay.hyp.co.il/p/, גם בבדיקות וגם בייצור |
Hyp ממליצה להגדיר רק כתובת הצלחה ולהשאיר את הצגת השגיאות בדף התשלום שלה: כשמוגדרת כתובת שגיאה, כל עסקה שאינה חיוב מיידי רגיל מופנית אליכם. בודקים בסכומים נמוכים, בסביבות 10 ש"ח לפי ההמלצה של Hyp. התיעוד מפרסם כרטיס בדיקה אחד שמצליח ואחד שנכשל, ובמעבר לייצור משתנים רק מספר המסוף, KEY ו-PassP. כרטיס הבדיקה מפסיק אז לעבוד.
התיעוד נמצא בכתובת developers.hyp.co.il. הדפים של Hyp Pay יושבים תחת /pay/, של Hyp Enterprise תחת /enterprise/, ושני דפי העיון שתפתחו הכי הרבה הם API Actions (כל ערכי action) ו-Status Codes (מה אומר כל CCode).
איך נוצר דף תשלום ב-Hyp Pay?
דף תשלום ב-Hyp Pay נוצר בשרת שלכם, משולם בדפדפן של הלקוח ומאומת שוב בשרת. התהליך המתועד כולל חמישה שלבים:
- השרת שולח
action=APISign&What=SIGN&Sign=Trueיחד עםMasof,KEY,PassPופרמטרי התשלום. - Hyp מחזירה מחרוזת שאילתה: אותם פרמטרים,
actionשהשתנה ל-pay, ופרמטרsignatureשנוסף. את המחרוזת מצמידים כמו שהיא ל-https://pay.hyp.co.il/p/?, באותו סדר בדיוק. - הלקוח מופנה לכתובת הזו ומקליד את הכרטיס בדף של Hyp, כך שפרטי הכרטיס לא מגיעים לשרת שלכם.
- Hyp מפנה לכתובת ההצלחה שהוגדרה בפורטל של Hyp Pay, עם
Id,CCode,Amount,ACode,Order,Fild1עדFild3ו-Sign. - השרת שולח
action=APISign&What=VERIFYעם כל הפרמטרים שהגיעו בהפניה, באותו סדר.CCode=0פירושו שהעסקה תואמת את הרישום אצל Hyp.
Hyp מגדירה את השלב החמישי כרשות וממליצה לבצע אותו בכל עסקה. כדאי להתייחס אליו כחובה: ההפניה עוברת דרך הדפדפן של הלקוח, ושם אפשר לשנות אותה או שהיא פשוט לא תגיע. האימות גם תלוי ב-Sign=True בשלב הראשון ובהגדרה "אימות על ידי חתימה בעמודי התשלום" בפורטל, שלדברי Hyp פעילה בדרך כלל כברירת מחדל.
הפעולות של Hyp Pay שבאמת תשתמשו בהן
כל פעולה ב-Hyp Pay נשלחת לאותה כתובת, והפרמטר action קובע מה היא עושה. אלה הפעולות שחנות או עסק מנויים צריכים בדרך כלל:
| action | מה היא עושה | פרמטרים עיקריים | תשובה מוצלחת |
|---|---|---|---|
APISign + What=SIGN | יוצרת כתובת חתומה לדף תשלום | Masof, KEY, PassP, Sign=True, Amount, Coin, Tash, Order | מחרוזת עם action=pay ו-signature |
APISign + What=VERIFY | מוודאת שהפניית ההצלחה לא שונתה | פרטי הגישה וכל פרמטרי ההפניה, לפי הסדר | CCode=0 |
getToken | מחזירה את הטוקן של הכרטיס מעסקה | Masof, PassP, TransId, ו-allowFalse כרשות | Token (19 ספרות) ו-Tokef (YYMM) |
soft | חיוב שרת-לשרת, למשל של טוקן שמור | CC, Token=True, Tmonth, Tyear, UserId, ClientName, Info, Amount | Id, CCode=0, ACode |
HKStatus | עוצרת או מחדשת הסכם חיוב חוזר שמנוהל ב-Hyp | HKId, NewStat (1 עוצר, 2 מחדש) | HKId, CCode=0 |
zikoyAPI | זיכוי מלא או חלקי של עסקה שכבר שודרה | TransId, Amount | Id חדש, CCode=0 |
כמה ערכים שכדאי להכיר לפני הבקשה הראשונה: Coin הוא 1 לשקל (ברירת המחדל), 2 לדולר, 3 לאירו ו-4 לליש"ט; PageLang מקבל HEB או ENG; Tash הוא מספר התשלומים המקסימלי שהלקוח יכול לבחור.
איך עובד חיוב חוזר ב-Hyp Pay?
Hyp Pay תומכת בחיוב חוזר בשתי דרכים, והבחירה ביניהן תלויה בשאלה אם הסכום קבוע.
- ניהול בצד Hyp - מוסיפים
HK=Trueלבקשת דף התשלום, עםAmountכסכום הקבוע,freqכמחזור החיוב בחודשים,Tash=999להמשך ללא הגבלה (או מספר חיובים מוגדר), ו-OnlyOnApprove=Trueכדי שההסכם ייכנס לתוקף רק אחרי שהתשלום הראשון אושר.TashFirstPaymentקובע סכום שונה לחיוב הראשון. בהפניית ההצלחה מתווסףHKId, ששומרים כדי לעצור את ההסכם בהמשך עםHKStatus. Hyp מריצה את לוח הזמנים, ולכן זה מתאים למנויים. - ניהול בצד שלכם - להסכמים פתוחים שבהם הסכום משתנה בכל פעם (בתיעוד זה נקרא הוראת קבע), או למחזורים כמו פעם בשבועיים. שומרים את ה-
Idשל העסקה הראשונה, שולפים טוקן, מריצים את לוח הזמנים בשרת שלכם ומחייבים כל מחזור עםaction=soft.
לפני שמתחייבים לאחת הדרכים, כדאי לעבור על הדרישות בבחירת ספק לחיובים חוזרים בישראל: מי שמחזיק את לוח הזמנים הוא גם מי שמטפל בכישלונות.
חיוב טוקן שמור עם action=soft
טוקן של Hyp Pay הוא מספר בן 19 ספרות, שארבע הספרות האחרונות שלו זהות לאלה של הכרטיס, והוא ייחודי לכל בית עסק. הטוקן מייצג רק את מספר הכרטיס, ולכן צריך לשמור לצידו את תוקף הכרטיס. הטוקן לא מגיע בהפניית ההצלחה: מבקשים אותו עם action=getToken, כשה-Id מההפניה נשלח כ-TransId, והתשובה כוללת Token ו-Tokef.
החיוב עצמו הוא בקשת action=soft שבה CC מכיל את הטוקן, Token=True, Tmonth ו-Tyear נלקחים מ-Tokef, ו-UserId מכיל את מספר ת"ז מהתשלום הראשון, או 000000000 אם המסוף שלכם לא דורש ת"ז. התיעוד של Hyp מציין שמספר ת"ז הוא מידע אישי רגיש, ולכן שומרים אותו רק כשהמסוף דורש אותו. טוקן עובד במסוף שיצר אותו; מסוף נוסף תחת אותו מספר עוסק יכול להשתמש בו דרך tOwner.
שגיאות של getToken שכדאי לטפל בהן במפורש:
901- למסוף אין הרשאה להשתמש בטוקנים.902- האימות נכשל, בדרך כלל בגללPassPשגוי.910- העסקה לא הצליחה ולא נשלחallowFalse=True.
חיוב soft שנדחה מחזיר CCode שונה מ-0. מה עושים איתו במחזור הבא מוסבר במדריך הטיפול בחיובים חוזרים שנכשלו.
הפקת חשבונית יחד עם החיוב ב-Hyp Pay
Hyp Pay יכולה להפיק את החשבונית בעצמה, כך שחיבור שצריך מסמך אחד לכל תשלום לא חייב מערכת חשבוניות נפרדת. ההפקה מופעלת במסוף כברירת מחדל, ו-Hyp מפיקה מסמך אוטומטית לכל עסקה שהצליחה, כולל זיכויים, ביטולים ותשלומים יוצאים. מסמך ברירת המחדל הוא חשבונית מס קבלה; אפשר להגדיר במסוף קבלה במקומה, ועמותה יכולה להגדיר קבלה על תרומה. את המסמך קובעים בפרמטרים של אותה בקשת תשלום:
SendHesh=Trueשולח את המסמך ללקוח במייל, לכתובת שב-email.sendHeshSMS=Trueשולח קישור למסמך ב-SMS, למספר שב-cell.heshDescהוא התיאור הכללי שמודפס בתא הפרטים.Pritim=Trueמודיע ל-Hyp שנשלחת רשימת פריטים; Hyp מכפילה כמות במחיר לכל פריט ומסכמת.EZ.customer_crnהוא מספר העוסק של הלקוח. לפי התיעוד של Hyp, החוק בישראל מחייב אותו במסמכים מעל 5,000 ש"ח.
אם העסק כבר מפיק מסמכים במערכת אחרת, מחליטים איזו מערכת מפיקה לכל עסקה. שתי מערכות שמפיקות על אותו תשלום משאירות שני מסמכים ממוספרים שצריך ליישב. הדפוס המלא מופיע בהפקת חשבונית אוטומטית אחרי תשלום.
Hyp Pay או Hyp Enterprise?
Hyp Pay ו-Hyp Enterprise הם שני ממשקים שונים, ולכן השלב הראשון הוא לברר לאיזה מהם שייך המסוף של העסק. Hyp Pay הוא מוצר השירות העצמי, והוא תומך ברמת ה-PCI הפשוטה ביותר, SAQ A. ל-Hyp Enterprise, לשעבר Hyp CreditGuard, יש תיעוד API נפרד עם פעולות כמו doDeal, refundDeal ו-inquireTransactions, עמוד webhooks מתועד, ותמיכה ב-SAQ A-EP וב-SAQ D. באינדקס התיעוד של Hyp Pay אין עמוד webhooks, ולכן ב-Hyp Pay הפניית ההצלחה יחד עם VERIFY היא האות שעליו בונים.
קוד שירשתם עשוי לפנות לכתובת הוותיקה icom.yaad.net ולא ל-pay.hyp.co.il. לפני שמשנים אותו, בררו מול Hyp איזו כתובת ואילו פרטי גישה תקפים למסוף שלכם. להשוואה עם המודל של שער סליקה ישראלי אחר, ראו את המדריך ל-API של קארדקום.
מה משתבש בחיבור ל-Hyp Pay
- פרטי גישה בדפדפן.
KEYו-PassPעוברים ב-URL, ולכן Hyp דורשת שהקריאות ייצאו מהשרת שלכם ב-TLS 1.2 ומעלה, וממליצה להסתיר את שניהם בלוגים. - סדר פרמטרים שהשתנה. גם כתובת דף התשלום וגם קריאת
VERIFYמצפות לפרמטרים בדיוק כפי שהתקבלו. בנייה מחדש מתוך אובייקט מפוענח עלולה לשנות את הסדר. - אישורים שנקראים ככישלון. אם הגדרתם כתובת שגיאה, עסקת אישור בשני שלבים (
700, J5) ועסקה דחויה (800) יופנו אליה, ולפי Hyp צריך להתייחס לשתיהן כהצלחה. - טוקן בלי תוקף. בלי
Tokefאי אפשר למלא אתTmonthו-Tyear, והטוקן השמור חסר תועלת. - בדיקת סטטוס HTTP במקום
CCode. התוצאה נמצאת בגוף התשובה;999היא שגיאת תקשורת, ו-33זיכוי גבוה מהמותר. - אין הזמנה פנימית לפני
APISign. צרו קודם רשומת הזמנה משלכם והעבירו אותה כ-Order, כך שהפניה שלא הגיעה תופיע כהזמנה שלא שולמה ואפשר יהיה לבדוק אותה בפורטל.
מקורות
שאלות נפוצות
Hyp ויעד שריג הם אותו דבר?
כן, מבחינת שער הסליקה. תיעוד המפתחים של Hyp מתאר את Hyp Pay כמוצר שנקרא בעבר YaadPay, השער של יעד שריג. ל-Hyp יש גם את Hyp Enterprise, לשעבר Hyp CreditGuard, שהוא ממשק אחר. בררו לאיזה מהשניים שייך המסוף שלכם לפני שמתכננים את עבודת החיבור.
יש ל-Hyp Pay סביבת בדיקה?
כן. מספרי מסופי בדיקה של Hyp Pay מתחילים תמיד ב-00100, והתיעוד מפרסם כרטיס בדיקה אחד שמצליח ואחד שנכשל. הכתובת זהה בבדיקה ובייצור, https://pay.hyp.co.il/p/, ולכן מעבר לייצור פירושו החלפת Masof, KEY ו-PassP בערכי הייצור שמקבלים מ-Hyp. אחרי ההחלפה כרטיס הבדיקה כבר לא יעבוד.
איך מחייבים כרטיס שמור ב-Hyp Pay?
שומרים את ה-Id מהתשלום המוצלח הראשון, קוראים ל-action=getToken כשהוא נשלח כ-TransId, ושומרים את Token ו-Tokef שחוזרים. כדי לחייב שולחים action=soft עם CC שמכיל את הטוקן, Token=True, Tmonth ו-Tyear מתוך Tokef, UserId, ClientName, Info ו-Amount. CCode=0 בתשובה פירושו שהחיוב אושר, וכל ערך אחר הוא קוד דחייה או שגיאה.
איך עוצרים חיוב חוזר ב-Hyp?
בהסכם ש-Hyp מנהלת שולחים action=HKStatus עם Masof, PassP, ה-HKId שחזר בהפניית ההצלחה הראשונה ו-NewStat=1. הערך NewStat=2 מחדש הסכם שהופסק, וקוד 906 פירושו שההסכם לא קיים. אפשר גם לעצור את ההסכם ידנית מתוך חשבון Hyp Pay, ובכל מקרה כדאי לשמור את ה-HKId כבר ברגע התשלום הראשון.
אפשר לזכות חלק מעסקה ב-Hyp Pay?
כן. שולחים action=zikoyAPI עם Masof, PassP, ה-Id של העסקה המקורית בתור TransId, והסכום לזיכוי ב-Amount, עד גובה העסקה המקורית. זיכוי יוצר עסקה חדשה עם Id משלה. קוד 33 פירושו שהסכום שביקשתם גבוה ממה שהעסקה מאפשרת לזכות, ולכן כדאי לשמור בצד שלכם כמה כבר זוכה מכל עסקה.
איפה נמצא התיעוד של ה-API של Hyp?
בכתובת developers.hyp.co.il. Hyp Pay, לשעבר YaadPay, מתועדת תחת /pay/, ו-Hyp Enterprise, לשעבר CreditGuard, תחת /enterprise/. בצד של Hyp Pay, הדף API Actions מפרט את כל ערכי action, והדף Status Codes מסביר כל CCode.
איפה מוצאים את מפתח ה-API ואת ה-PassP של Hyp Pay?
בפורטל של Hyp, תחת הגדרות, ואז "דף תשלום ו-API", באזור "אימות". PassP היא סיסמת ה-API, והיא נפרדת מהסיסמה לכניסה לפורטל. מספר המסוף עצמו מגיע במייל ההקמה של Hyp.
להמשך קריאה
שירות רלוונטי
אינטגרציה בין מערכות
לגרום למערכות שאתם כבר משלמים עליהן לדבר זו עם זו.
יש לך פרויקט דומה?
ספר לי מה אתה רוצה לבנות או איזה תהליך להפוך לאוטומטי. אני חוזר תוך 24 שעות עסקים עם כמה שאלות ממוקדות, ואז עוברים על זה יחד בשיחת היכרות חינמית של 30 דקות, בלי התחייבות. בסוף יש לך היקף עבודה, לוח זמנים ומחיר קבוע - או תשובה כנה שלא שווה לבנות את זה.