eduardweb.
Payments (Stripe, PayPal, Netopia)Avansat#woocommerce#stripe-connect#marketplace#split-payments

Cum am implementat split payments cu Stripe Connect în WooCommerce

De Corina Dobre, 26 mai 2026 · 8 vizualizări · 3 like-uri

Postat 26 mai 2026
php
add_filter('wc_stripe_payment_intent_args', 'custom_stripe_connect_split_payment', 10, 3);
function custom_stripe_connect_split_payment($args, $order, $prepared_source) {
    $order_total = $order->get_total();
    // Comision platformă: 10% convertit în cenți pentru Stripe
    $platform_fee = round($order_total * 0.10, 2) * 100; 

    $vendor_stripe_account = $order->get_meta('_vendor_stripe_account_id');

    if (!empty($vendor_stripe_account)) {
        $args['application_fee_amount'] = $platform_fee;
        $args['transfer_data'] = [
            'destination' => $vendor_stripe_account,
        ];
    }
    return $args;
}

Dacă vrei să faci un marketplace în WooCommerce și trebuie să împarți banii automat între platformă și vânzători, Stripe Connect e cam singura opțiune viabilă. Am implementat recent asta pentru un client cu 180 de vendori activi și am salvat cam 15 ore de muncă manuală de contabilitate pe săptămână. Totuși, integrarea ascunde niște capcane uriașe despre care nu scrie în documentația oficială.

Standard, Express sau Custom?

Aici e prima decizie greșită pe care o poți lua. Am început cu Standard fiindcă e gratuit, dar UX-ul e groaznic: vendorii sunt redirecționați în dashboard-ul Stripe complet, iar dacă au probleme cu KYC-ul (Know Your Customer), suportul lor e direct la Stripe, ceea ce duce la frustrări mari și tichete inutile în platforma ta.

Am trecut rapid la Express. Costă 2 dolari pe lună pentru fiecare cont activ plus 0.25% la payout, dar merită fiecare cent. Ai control complet pe fluxul de onboarding, iar utilizatorul vede un dashboard simplificat, customizat cu logo-ul tău. Custom? Doar dacă ai o echipă dedicată de compliance și bugete de zeci de mii de euro ca să gestionezi tu complet KYC-ul și riscul de fraudă. Pentru 95% din cazuri, Express e sweet spot-ul.

Logica de split în WooCommerce

WooCommerce nu e gândit nativ pentru multi-vendor. Chiar dacă folosești plugin-uri consacrate ca Dokan sau WCFM, codul pentru split payments tot trebuie optimizat manual dacă ai reguli complexe de business. Problema principală apare când ai coșuri mixte (produse de la vendori diferiți) și trebuie să împarți taxele și livrarea.

Dacă vendorul A are livrare de 15 lei și vendorul B are livrare de 20 lei, cum împarți application fee-ul? Am pățit ca la rotunjirile de TVA să avem decalaje de câțiva cenți, iar Stripe să dea eroare de validare la checkout. Soluția a fost să calculăm totul la nivel de linie de produs (line item) în backend și să trimitem parametrii exacți prin API, în loc să lăsăm plugin-ul de multi-vendor să facă estimări aproximative.

Coșmarul fiscal: Destination Charges vs Direct Charges

Aici e cel mai mare trade-off pe care mulți îl ignoră la început:

  1. Direct Charges: Clientul plătește direct vendorul, iar platforma își ia comisionul (application fee). Din punct de vedere fiscal e perfect pentru că tu, ca platformă, emiți factură doar pe comision. Dar dacă vendorul are balanța pe zero și un client cere refund, Stripe îți va bloca ție contul de platformă până când se acoperă gaura.
  2. Destination Charges: Banii intră mai întâi la tine (platformă) și apoi trimiți partea vendorului. E mult mai sigur pentru dispute și refund-uri, dar fiscal ești văzut ca cel care a încasat toată suma. Asta îți poate umfla artificial cifra de afaceri în fața ANAF-ului, chiar dacă profitul tău e doar comisionul de 10%.

La proiectul de care vă spuneam, am mers pe Destination Charges pentru că riscul de refund-uri necontrolate la produse fizice era prea mare, dar a trebuit să refacem complet fluxul de facturare automată ca să nu avem probleme la audit.

Voi cum ați rezolvat problema asta cu ANAF-ul la Destination Charges? Ați rămas pe Direct Charges de frica birocrației?

Răspunsuri 0

Se încarcă răspunsurile…

Loghează-te pentru a răspunde

Doar membrii comunității pot lăsa comentarii.