איבוד התראות הוא בעיה נפוצה בעת אינטגרציה עם שערי תשלום של בנקים. תצורת HMAC שגויה או פסקי זמן (timeouts) גורמים לכך שתשלומים עוברים בעוד שסטטוסי ההזמנות ב-Bitrix נותרים ללא שינוי. אנו פותרים זאת על ידי הטמעת בקשות סטטוס כפולות ל-API ואימות של כל התראה. התוצאה: אפס אובדן תשלומים וחיסכון של עד 12,000 BYN בשנה בעמלות עבור חנות ממוצעת.
פנתה אלינו חברה חקלאית עם קטלוג של 10,000 פריטים ומחזור חודשי של 500,000 BYN. לאחר חיבור סליקת Belagroprombank הסטנדרטית, הם נתקלו באובדן התראות: לקוחות שילמו, אך ההזמנות נותרו בסטטוס "ממתין לתשלום". הסיבה הייתה הגדרות אימות שגויות ופסקי זמן של השער. פיתחנו handler מותאם אישית עם בדיקת HMAC ובקשות סטטוס כפולות. ההתראות כבר לא אובדות, וחיסכון העמלות הממוצע עומד על כ-12,000 BYN בשנה הודות לניתוב תשלומים נכון.
הצוות שלנו עוסק באינטגרציות Bitrix כבר למעלה מ-6 שנים — יותר מ-50 פרויקטים עם שערי תשלום, כולל REST API ו-handlers התואמים לדרישות החוק הפדרלי 54-FZ. אנו מבטיחים פעולה יציבה ומספקים תיעוד לחשבונאות.
בעיות שאנו פותרים
- מגבלות Belkart — השער מזהה אוטומטית את סוג הכרטיס, אך במהלך בדיקות לעיתים קרובות מתברר שנקבעו מגבלות נמוכות יותר עבור Belkart. אנו מגדירים ניטור והתראות כדי להגיב במהירות.
- תשלום דו-שלבי — עבור פריטים המיוצרים לפי הזמנה, נדרשת חסימת סכום במקום חיוב. ללא מצב דו-שלבי, לקוחות ממתינים להחזר אם הפריט אינו במלאי. אנו מיישמים כפתור "אישור חיוב" בלוח הניהול.
- התראות — הבנק שולח בקשת POST, אך אם כתובת ה-URL אינה זמינה או שהאימות אינו מוגדר, התשלומים אובדים. אנו מוסיפים אימות HMAC וסינון IP, וכן בקשות סטטוס כפולות דרך ה-API.
כיצד לחבר סליקת אינטרנט של Belagroprombank ל-1C-Bitrix?
- הגשת בקשה לבנק — חתימה על חוזה לסליקת אינטרנט (בדרך כלל 7–14 ימי עסקים).
- קבלת פרטי גישה לבדיקות — נקודת קצה ונתוני חשבון עבור שער הבדיקות.
-
פיתוח handler מותאם אישית — אנו יוצרים אותו ב-
/local/php_interface/include/sale_payment/bapb_acquiring/. ה-handler רושם את ההזמנה, בודק את הסטטוס ומעבד החזרים. - הגדרת התראות — ציון כתובת ה-URL הציבורית של ה-handler והגדרת אימות (HMAC או רשימת IP מורשית).
- ביצוע בדיקות — בדיקת כל התרחישים: תשלום מוצלח, דחייה, החזר, מצב דו-שלבי.
- הפעלת מצב ייצור — לאחר בדיקות מוצלחות, מעבר לשער הייצור.
דוגמה לרישום הזמנה דרך API:
{ "merchantId": "BAPB_MERCHANT_ID",
"orderNumber": "BXORDER_34567",
"amount": 156800,
"currency": "BYN",
"returnUrl": "https://shop.by/order/success/34567/",
"failUrl": "https://shop.by/order/fail/34567/",
"notificationUrl": "https://shop.by/bitrix/tools/sale_ps_result.php",
"description": "Интернет-магазин: заказ №34567",
"sessionTimeoutSecs": 1200
} מדוע תשלום דו-שלבי מקצר את זמן ההחזר פי 3?
עבור חנויות לציוד חקלאי שבהן פריטים עשויים להיות מיוצרים לפי הזמנה, השיטה הדו-שלבית חוסכת זמן: תחילה אנו חוסמים את הסכום, ולאחר אישור הזמינות אנו מחייבים אותו. בשיטה חד-שלבית, בעת ביטול הלקוח נאלץ להמתין עד 8 ימי עסקים להחזר. בשיטה הדו-שלבית — החסימה משתחררת מיידית, והכסף חוזר תוך 1–2 ימים. ב-Bitrix זה מיושם באמצעות כפתור "אישור חיוב", הקורא ל-{ "merchantId": "BAPB_MERCHANT_ID", "orderNumber": "BXORDER_34567", "amount": 156800, "currency": "BYN", "returnUrl": "https://shop.by/order/success/34567/", "failUrl": "https://shop.by/order/fail/34567/", "notificationUrl": "https://shop.by/bitrix/tools/sale_ps_result.php", "description": "Интернет-магазин: заказ №34567", "sessionTimeoutSecs": 1200 } .
כיצד זירזנו החזרים עבור חנות לציוד גינון
מניסיון: חנות בלארוסית לציוד גינון לחצה על "ביצוע החזר" — ה-API החזיר הצלחה, אך הכסף הגיע תוך 8 ימי עסקים במקום 3. הסיבה: הם השתמשו ב-POST /orders/{orderId}/deposit עבור סכום שמור (שלא חויב). תיקנו זאת באמצעות תנאי — refund עבור סטטוס void, APPROVED עבור refund. כעת ההחזרים מסתיימים תוך 2–3 ימים.
דוחות והתאמות
הבנק מספק API לרג'יסטרים: DEPOSITED. אנו הופכים את הורדת הדוח בסוף היום לאוטומטית ומשווים אותו לנתוני Bitrix. אם מופיעות אי-התאמות, זהו אות מיידי להתראות שלא עובדו.
מה כלול בעבודה
- handler תשלום מותאם אישית עם תמיכה בתשלום דו-שלבי והחזרים.
- הגדרת התראות ואימות (HMAC או רשימת IP מורשית).
- ייצוא רג'יסטרים אוטומטי לחשבונאות.
- תיעוד הגדרות ותפעול.
- הדרכת עובדים בנושא החזרים ודוחות.
- תמיכה טכנית בעת ההשקה.
השוואת גישות: handler מותאם אישית לעומת מודול סטנדרטי
| קריטריון | handler מותאם אישית | מודול סטנדרטי |
|---|---|---|
| תמיכה בתשלום דו-שלבי | כן | לא |
| ביטול/החזר לפי סטטוס | אוטומטי | החזר בלבד |
| אימות התראות HMAC | כן | לא |
| ייצוא רג'יסטרים אוטומטי | כן | לא |
| תמיכה ב-Belkart | מלאה | מוגבלת |
לוח זמנים
| שלב | משך |
|---|---|
| הגשת בקשה ל-Belagroprombank | יום אחד |
| בחינה וחתימה על חוזה | 7–14 ימי עסקים |
| פיתוח ה-handler | 2–3 ימי עסקים |
| בדיקות וניפוי שגיאות | 1–2 ימים |
| הפעלת ייצור | 1–3 ימים לאחר בדיקות מוצלחות |
דרישות טכניות לשרת
- PHP 8.1+, [REST API](https://en.wikipedia.org/wiki/REST) (ויקיפדיה), cURL, JSON. - MySQL/MariaDB, הגדרת אינדקסים לטבלאות תשלומים. - גישה לבקשות יוצאות: יש לאפשר כתובות IP של הבנק. - תמיכה ב-HTTPS עבור כתובות URL של התראות.למה לבחור בנו
- תעודת 1C-Bitrix ולמעלה מ-6 שנות ניסיון באינטגרציות.
- יותר מ-50 פרויקטים שהושלמו עם שערי תשלום.
- הבטחת תוצאה: ה-handler פועל ללא תקלות, התראות אינן אובדות.
- אנו מספקים תיעוד מלא ותמיכה לאחר ההשקה.
הזמינו אינטגרציה — נעריך את הפרויקט שלכם תוך יום אחד. קבלו ייעוץ לחיבור סליקת Belagroprombank ל-1C-Bitrix.

