הטמעת תשלומים מפוצלים: חסכו מעל 5,000$ בחודש בחשבונאות

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

פיתוח ותחזוקה של כל סוגי האתרים:

אתרי מידע או יישומי אינטרנט
אתרי תדמית, דפי נחיתה, אתרי חברה, קטלוגים מקוונים, חידונים, אתרי קידום, בלוגים, מקורות חדשות, פורטלי מידע, פורומים, אגרגטורים
אתרי מסחר אלקטרוני או יישומי אינטרנט
חנויות מקוונות, פורטלי B2B, שווקים, בורסות מקוונות, אתרי קאשבק, בורסות, פלטפורמות דרופשיפינג, מנתחי מוצרים
יישומי אינטרנט לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, פורטלים ארגוניים, מערכות ניהול ייצור, מנתחי מידע
אתרי שירות אלקטרוני או יישומי אינטרנט
פלטפורמות מודעות, בתי ספר מקוונים, בתי קולנוע מקוונים, בוני אתרים, פורטלים לשירותים אלקטרוניים, פלטפורמות אירוח וידאו, פורטלים נושאיים

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 2062 השירותים
הטמעת תשלומים מפוצלים: חסכו מעל 5,000$ בחודש בחשבונאות
מורכב
~3-5 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אתר חברה B2B ADVANCE
    פיתוח אתר חברה B2B ADVANCE
    1502
  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1344
  • פיתוח אתר עבור BELFINGROUP
    פיתוח אתר עבור BELFINGROUP
    1052
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1306
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1049
  • פיתוח אתר לחברת FIXPER
    פיתוח אתר לחברת FIXPER
    1033

הטמעת תשלומים מפוצלים: חסכו מעל 5,000$ בחודש בחשבונאות

תשלומים מפוצלים מפרקים עסקת לקוח אחת למספר תשלומים למקבלים שונים בו-זמנית. מקרה טיפוסי הוא שוק עם 50 מוכרים, שבו כל הזמנה צריכה להתפצל בין המוכר, הפלטפורמה ותוכנית הפניה. ללא מערכת תשלומים מפוצלים, רואה חשבון מבלה 3 שעות ביום בהתאמות ידניות — עם ההטמעה שלנו, הזמן הזה יורד ל-15 דקות (הפחתה של 92%), ו-95% מההחזרים מטופלים אוטומטית. תרחישים נוספים: שירות הזמנות עם עמלת אגרגטור, מנוי עם חלוקת הכנסות בין שותפים.

אנו מתכננים ומיישמים תשלומים מפוצלים מקצה לקצה: מבחירת ספק ועד ניטור ופיסקליזציה. ההטמעה אורכת 5 עד 14 ימי עסקים בהתאם למספר המקבלים, לוגיקת החלוקה וספק התשלומים שבו משתמשים. ניסיון של למעלה מ-10 שנים באינטגרציות תשלומים מבטיח פתרון מאובטח ותואם רגולציה. יותר מ-200 לקוחות סומכים עלינו. בקשו ביקורת על מערכת התשלומים שלכם — נמצא צווארי בקבוק ונציע את הפתרון האופטימלי.

מדוע תשלומים מפוצלים דורשים ארכיטקטורה נכונה?

פיצול שגוי מוביל לפערים כספיים, בעיות החזרים וסיכוני מס. לדוגמה, אם לא משתמשים ב-transfer_group ב-Stripe, העברות לא מתהפכות אוטומטית בעת החזר, וכסף עלול ללכת לאיבוד. הארכיטקטורה חייבת לטפל בעיבוד שגיאות, עיגול אגורות וניטור. המהנדסים שלנו עם ניסיון של עשור בונים תוכניות אמינות שחוסכות עד 20% מזמן החשבונאות ומפחיתות שגיאות ב-50%.

כיצד לבחור את מודל הפיצול?

ישנן שתי גישות שונות מהותית — חיוב + העברה ו-חיוב ישיר — והבחירה מגדירה את כל השאר.

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

עבור רוב השווקים בשלב מוקדם, חיוב + העברה קל יותר — פחות מורכבות משפטית בעת הצטרפות מוכרים.

כיצד פועל חיוב + העברה ב-Stripe?

Stripe Connect הוא הסטנדרט דה-פקטו לתשלומים מפוצלים. ראשית צור PaymentIntent עבור הסכום המלא, ולאחר מכן בטפל ב-webhook בצע העברות:

$paymentIntent = \Stripe\PaymentIntent::create([
    'amount' => $order->total_cents,
    'currency' => 'eur',
    'payment_method_types' => ['card'],
    'metadata' => [
        'order_id' => $order->id,
        'split_recipients' => json_encode($order->recipients),
    ],
]);

// В webhook-обработчике
public function handlePaymentSucceeded(array $payload): void
{
    $intent = $payload['data']['object'];
    $recipients = json_decode($intent['metadata']['split_recipients'], true);

    foreach ($recipients as $recipient) {
        \Stripe\Transfer::create([
            'amount' => $recipient['amount_cents'],
            'currency' => $intent['currency'],
            'destination' => $recipient['stripe_account_id'],
            'transfer_group' => $intent['transfer_group'],
            'source_transaction' => $intent['charges']['data'][0]['id'],
        ]);
    }
}

$paymentIntent = \Stripe\PaymentIntent::create([ 'amount' => $order->total_cents, 'currency' => 'eur', 'payment_method_types' => ['card'], 'metadata' => [ 'order_id' => $order->id, 'split_recipients' => json_encode($order->recipients), ], ]); // В webhook-обработчике public function handlePaymentSucceeded(array $payload): void { $intent = $payload['data']['object']; $recipients = json_decode($intent['metadata']['split_recipients'], true); foreach ($recipients as $recipient) { \Stripe\Transfer::create([ 'amount' => $recipient['amount_cents'], 'currency' => $intent['currency'], 'destination' => $recipient['stripe_account_id'], 'transfer_group' => $intent['transfer_group'], 'source_transaction' => $intent['charges']['data'][0]['id'], ]); } } מקשר את כל ההעברות לתשלום המקורי — קריטי להחזרים נכונים. transfer_group מבטיח שההעברה משתמשת רק בכספים מהחיוב הספציפי הזה, לא מהיתרה הכללית. פרטים נוספים ב-תיעוד Stripe Connect.

אחסון תצורת הפיצול

כללי הפיצול מאוחסנים במסד הנתונים, לא בקוד — אחרת כל שינוי עמלה דורש פריסה. סכמה לדוגמה: טבלת source_transaction עם שדות split_rules, entity_type, entity_id (אחוז, קבוע, יתרה), rule_type, value. החלקים מחושבים לפני יצירת ההעברות, וחייב להיות בדיוק כלל אחד של priority — זה מגן מפני שגיאות עיגול וטעויות מצטברות. סכום החלקים חייב להתאים ל-remainder עד האגורה.

class SplitCalculator {
    public function calculate(int $totalCents, array $rules): array {
        $allocated = 0;
        $result = [];
        // Сначала фиксированные суммы
        foreach ($rules as $rule) {
            if ($rule['rule_type'] === 'fixed') {
                $result[] = ['recipient' => $rule['entity_id'], 'amount' => $rule['value']];
                $allocated += $rule['value'];
            }
        }
        // Затем процентные
        foreach ($rules as $rule) {
            if ($rule['rule_type'] === 'percentage') {
                $amount = (int) round($totalCents * $rule['value'] / 100);
                $result[] = ['recipient' => $rule['entity_id'], 'amount' => $amount];
                $allocated += $amount;
            }
        }
        // Остаток — платформе или last-in-line получателю
        $remainder = $totalCents - $allocated;
        foreach ($rules as $rule) {
            if ($rule['rule_type'] === 'remainder') {
                $result[] = ['recipient' => $rule['entity_id'], 'amount' => $remainder];
                break;
            }
        }
        return $result;
    }
}

כיצד לטפל בהחזרים עם תשלומים מפוצלים?

החזר של תשלום מפוצל הוא החלק הכואב ביותר. Stripe לא הופך העברות אוטומטית בעת החזר PaymentIntent — יש לעשות זאת במפורש. אלגוריתם: 1) החזר את התשלום הראשי, 2) הפוך העברות באופן יחסי לסכום ההחזר. אם בחשבון המקבל אין מספיק כספים להפיכה, Stripe מחזיר שגיאה — אז נדרש חיוב ידני.

public function refund(Order $order, int $refundCents): void {
    // 1. Рефанд основного платежа
    \Stripe\Refund::create([
        'payment_intent' => $order->stripe_payment_intent_id,
        'amount' => $refundCents,
        'refund_application_fee' => true,
    ]);

    // 2. Реверс трансферов пропорционально
    $ratio = $refundCents / $order->total_cents;
    foreach ($order->transfers as $transfer) {
        $reverseAmount = (int) round($transfer->amount_cents * $ratio);
        \Stripe\Transfer::createReversal($transfer->stripe_transfer_id, [
            'amount' => $reverseAmount,
            'refund_application_fee' => true,
        ]);
    }
}

טעויות החזר נפוצות

  • שכחת הגדרת total – הפלטפורמה מאבדת עמלה.
  • חישוב שגוי של היחס עקב עיגול – פערי אגורות מצטברים.
  • אי טיפול בהחזרים חלקיים כאשר העברה כבר הופכה חלקית.

חלופות ל-Stripe

ספק מודל פיצול גמישות פיסקליזציה אזור
Stripe Connect חיוב + העברה / חיוב ישיר גבוהה דורש נפרד גלובלי
CloudPayments קבלה עם מספר מקבלים בינונית מובנית חבר העמים
YooKassa Deal API בינונית מובנית רוסיה
Fondy הסכם שותפות נמוכה בצד הספק אוקראינה

בממוצע, אינטגרציה עם Stripe Connect נותנת 30% יותר שליטה בעסקאות מאשר חלופות CloudPayments אך לוקחת פי 2 יותר זמן להקמה (5–14 ימים לעומת 2–5 ימים). בחירת הספק תלויה בגיאוגרפיה ובדרישות פיסקליזציה.

מה לעשות כשהניטור מזהה פערים?

כל יום רצה משימת התאמה – משווה סכומי העברות במסד הנתונים עם העברות בפועל דרך Stripe API. פערים מפעילים התראה. זו לא פרנויה – webhooks לפעמים הולכים לאיבוד, במיוחד במהלך פריסות בזמן עסקאות. עם ניטור פעיל, אתם מקצצים הפסדים כספיים מכשלים כאלה ב-10–15%.

$stripeTransfers = \Stripe\Transfer::all([
    'created' => ['gte' => $yesterday->timestamp, 'lt' => $today->timestamp],
    'limit' => 100,
]);

$dbTransfers = Transfer::whereDate('created_at', $yesterday)->get()->keyBy('stripe_id');

foreach ($stripeTransfers->autoPagingIterator() as $transfer) {
    if (!isset($dbTransfers[$transfer->id])) {
        Log::critical('Untracked transfer', ['stripe_id' => $transfer->id, 'amount' => $transfer->amount]);
    }
}

מה כלול בהטמעת התשלומים המפוצלים שלנו

חבילת ההטמעה שלנו כוללת:
  • ניתוח לוגיקה עסקית ובחירת מודל הפיצול האופטימלי.
  • אינטגרציה עם ספק תשלומים (Stripe, CloudPayments, YooKassa).
  • הגדרת כללי חלוקה ואחסון במסד נתונים.
  • הטמעת טיפול בהחזרים והפיכת העברות.
  • הגדרת webhooks וניטור.
  • תיעוד API והוראות חשבונאיות.
  • הכשרת הצוות שלכם על מערכת התשלומים.
  • חודש תמיכה לאחר ההשקה.

היבטי מס ומשפט

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

מוכנים לאוטומציה של התשלומים המפוצלים שלכם?

עם ניסיון של 10+ שנים ו-15+ פרויקטים מוצלחים של תשלומים מפוצלים, אנו מבטיחים הטמעה חלקה. העלות האופיינית מתחילה ב-2,500$, ולקוחות רואים החזר השקעה תוך 3 חודשים דרך הפחתת עבודה ידנית ופחות שגיאות. צרו קשר לביקורת המערכת עוד היום.