ברוכים הבאים לתיעוד הרשמי של ממשק ה-API של תקבול. מדריך זה מספק הסבר מלא וקל ליישום על אופן השימוש בשירותי תקבול, כולל הפקת תשלום, חיוב מבוסס טוקן, יצירת מסמכים, קבלת התראות ועוד.
זהו תרשים זרימה שמציג את סדר הפעולות המומלץ: הזדהות → יצירת הזמנה → תשלום → IPN → אימות → טוקן → מסמכים → החזר. מומלץ לקרוא את כל השלבים וליישם לפי הסדר.
🔗 התחלת עבודה: לקבלת פרטי גישה לסביבת בדיקות (sandbox) וגישה לפורטל המערכת:
📦 סביבת פיתוח Postman: מעבר למרחב
🇬🇧 קישור לתיעוד באנגלית: https://takbull.docs.apiary.io/#
API_Key – מפתח ציבוריAPI_Secret – מפתח פרטיcurl --location 'https://api.takbull.co.il/api/ExtranalAPI/GetTakbullPaymentPageRedirectUrl' \
--header 'Content-Type: application/json' \
--header 'API_Secret: YOUR_SECRET' \
--header 'API_Key: YOUR_KEY'
uniqId)POST /api/ExtranalAPI/GetTakbullPaymentPageRedirectUrl
{
"order_reference": "A11A234",
"OrderTotalSum": 150.77,
"RedirectAddress": "someurl.com"
}
✅ שימו לב: חובה להגדיר גם כתובת IPN לקבלת עדכון תשלום, אחרת לא תתקבל התראה.
POST /api/ExtranalAPI/GetTakbullPaymentPageRedirectUrl| פרמטר | טיפוס | חובה | תיאור |
|---|---|---|---|
order_reference |
String | כן | מזהה פנימי של ההזמנה במערכת שלכם. |
OrderTotalSum |
Number | כן | סכום ההזמנה הכולל לתשלום. |
RedirectAddress |
String | כן | הכתובת אליה יועבר המשתמש לאחר התשלום. |
IPNAddress |
String | לא | כתובת ה-IPN לקבלת עדכון בזמן אמת על תוצאה. |
DisplayType |
String | לא | 'Iframe' או 'redirect' להצגת טופס התשלום. |
PostProcessMethod |
Number | לא | 0 להפניה רגילה, 1 לשליחת event לחלון. |
CancelReturnAddress |
String | לא | כתובת להחזרת המשתמש במקרה ביטול. |
CustomerFullName |
String | לא | שם מלא של הלקוח. |
Customer |
Object | לא | אובייקט הכולל פרטים מלאים על הלקוח (ראו למטה). |
DealType |
Number | לא | סוג עסקה: רגיל=1, תשלומים=2, מנוי=4, טוקן=6. |
PaymentMethodType |
Number | לא | סוג תשלום: אשראי=3 (ברירת מחדל), Bit=21. |
Currency |
String | לא | סוג מטבע: ILS / USD / EUR. |
Language |
String | לא | שפת הטופס: "he", "en", "fr". |
CreateDocument |
Boolean | לא | האם ליצור מסמך לאחר התשלום (חשבונית / קבלה). |
Products |
Array | לא | מערך מוצרים הכולל שם, מחיר, כמות ועוד (ראו למטה). |
| שדה | טיפוס | חובה | תיאור |
|---|---|---|---|
FullName |
String | כן | שם מלא של הלקוח |
Email |
String | כן | כתובת דוא"ל של הלקוח |
Phone |
String | כן | מספר טלפון |
IdNumber |
String | לא | מספר זהות או ח.פ. |
Address |
String | לא | כתובת מלאה |
City |
String | לא | עיר |
ZipCode |
String | לא | מיקוד |
Country |
String | לא | מדינה |
| שדה | טיפוס | חובה | תיאור |
|---|---|---|---|
ProductName |
String | כן | שם המוצר |
Price |
Number | כן | מחיר ליחידה |
Quantity |
Number | כן | כמות נדרשת |
Description |
String | לא | תיאור נוסף |
ProductCode |
String | לא | קוד מזהה פנימי/חיצוני |
VATType |
Number | לא | סוג מע"מ (0=ללא, 1=כולל, 2=לא כולל) |
✳️ דוגמת בקשת JSON ניתן לראות למעלה בדוגמה.
📎 להסבר מלא עם כל הפרמטרים האפשריים, ניתן לעיין בתיעוד ב-Postman.{
"uniqId": "A1B2C3D4",
"PaymentPageUrl": "https://api.takbull.co.il/payment/A1B2C3D4",
"Status": 1,
"Message": "הצלחה",
"Errors": []
}
uniqId – מזהה ייחודי להזמנה (לשימוש באימות עתידי).PaymentPageUrl – הקישור לעמוד התשלום עבור המשתמש.Status – סטטוס התגובה (1 = הצלחה, 0 = כישלון).Message – הודעה טקסטואלית לגבי תוצאת הבקשה.Errors – מערך שגיאות אם היו.POST /api/ExtranalAPI/GetTakbullPaymentPageRedirectUrl – יצירת הזמנה וקבלת כתובת תשלוםPOST /api/ExtranalAPI/ValidateNotification – אימות סטטוס (חובה לבצע אחרי IPN/Redirect)POST /api/ExtranalAPI/ChargeToken – חיוב חוזר באמצעות טוקןPOST /api/ExtranalAPI/Refund – ביטול עסקה / החזר מלא או חלקיPOST /api/DocumentApi/Create – יצירת מסמך (חשבונית/קבלה/חשבונית מס קבלה/זיכוי ועוד)POST /api/ExtranalAPI/ValidateNotification
{ "uniqId": "..." }
{
"uniqId": "A1B2C3D4"
}
דוגמה לתשובת Validate (אפשרי):
{
"Status": "Approved",
"Amount": 150.77,
"Currency": "ILS",
"Token": "tok_456",
"TransactionId": "TX987",
"Message": "העסקה אושרה",
"Errors": []
}
⚠️ הערה חשובה: גם אם המשתמש חזר ב-Redirect, וגם אם התקבל IPN — עדיין מומלץ לבצע Validate כדי לוודא סטטוס אמיתי בשרת.
{
"order_reference": "A11A234",
"uniqId": "A1B2C3D4",
"TransactionId": "TX987",
"Status": "Approved",
"OrderTotalSum": 150.77,
"Currency": "ILS",
"Token": "tok_456",
"DocumentUrl": "https://...."
}
✅ Best Practice: קבלתם IPN → שמרו לוג → החזירו 200 → בצעו ValidateNotification כדי לאמת סופית.
POST /api/ExtranalAPI/ChargeToken| פרמטר | טיפוס | חובה | תיאור |
|---|---|---|---|
Token |
String | כן | המזהה המאובטח מהעסקה הראשונה |
OrderTotalSum |
Number | כן | סכום לתשלום |
order_reference |
String | כן | מזהה הזמנה פנימי |
IPNAddress |
String | לא | כתובת לקבלת התראת תשלום |
RedirectAddress |
String | לא | כתובת להעברת המשתמש בסיום התהליך |
CreateDocument |
Boolean | לא | אם להפיק חשבונית/קבלה |
Products |
Array | לא | רשימת מוצרים עבור יצירת מסמך |
{
"Token": "tok_456",
"OrderTotalSum": 99.90,
"order_reference": "ORDER124",
"IPNAddress": "https://example.com/ipn",
"RedirectAddress": "https://example.com/success",
"CreateDocument": true,
"Products": [
{
"ProductName": "מוצר לדוגמה",
"Price": 99.90,
"Quantity": 1,
"Description": "תיאור מוצר",
"ProductCode": "SKU-001",
"VATType": 1
}
]
}
דוגמה לתשובה אפשרית:
{
"uniqId": "Z9Y8X7W6",
"Status": 1,
"Message": "הצלחה",
"Errors": []
}
POST /api/DocumentApi/Create{
"uniqId": "A1B2C3D4",
"DocumentType": "InvoiceReceipt",
"Customer": {
"FullName": "ישראל ישראלי",
"Email": "test@test.com",
"Phone": "0500000000",
"IdNumber": "123456789",
"Address": "רחוב הדוגמה 1",
"City": "תל אביב",
"ZipCode": "0000000",
"Country": "IL"
},
"Products": [
{
"ProductName": "מוצר לדוגמה",
"Price": 150.77,
"Quantity": 1,
"Description": "תיאור מוצר",
"ProductCode": "SKU-001",
"VATType": 1
}
]
}
דוגמה לתשובה אפשרית:
{
"Status": 1,
"Message": "המסמך נוצר בהצלחה",
"DocumentUrl": "https://....",
"Errors": []
}
POST /api/ExtranalAPI/Refund| פרמטר | טיפוס | חובה | תיאור |
|---|---|---|---|
uniqId |
String | כן | המזהה של העסקה המקורית |
RefundAmount |
Number | לא | סכום להחזר (אם לא נשלח – מבוצע ביטול מלא) |
CancelReason |
String | לא | סיבת הביטול או הערה פנימית |
CreateDocument |
Boolean | לא | אם ליצור תעודת זיכוי |
{
"uniqId": "A1B2C3D4",
"RefundAmount": 150.77,
"CancelReason": "ביטול לפי בקשת לקוח",
"CreateDocument": true
}
דוגמה לתשובה אפשרית:
{
"Status": 1,
"Message": "ההחזר בוצע בהצלחה",
"Errors": []
}
| Status | משמעות |
|---|---|
Approved |
אושר |
Declined |
נדחה |
Pending |
בהמתנה |
Refunded |
זוכה |
| קוד | תיאור |
|---|---|
401 |
API Key / Secret שגוי |
400 |
שדות חסרים / בקשה לא תקינה |
500 |
שגיאת מערכת |
יצירת קשר

תקבול
כול הזכויות שמורות ל ש.פ תקבול בע"מ 2020©