Symptomy
- WC objednávka byla dokončena, ale
{prefix}affinite_commissionstabulka nemá záznam. - Affiliate vidí klik v dashboardu, ale žádnou provizi.
- Admin panel orderu nezobrazuje Affiliate Information.
1. Check order meta
wp wc shop_order get 123 --user=1 --field=meta_data
Hledejte:
_affinite_affiliate_id— pokud chybí, cookie nebyla nastavena při checkout (klik neproběhl nebo expiroval)._affinite_click_id— sekundární vazba.
2. Check order status
Provize se generují při:
woocommerce_order_status_completed(primární)woocommerce_order_status_processing(alternativní pro digitální produkty)
Pokud order zůstal v statusu pending payment, on-hold nebo cancelled, provize se NEVYTVOŘÍ. Ručně přechod přes admin/CLI:
wp wc shop_order update 123 --status=completed --user=1
3. Hook ordering konflikt
Jiný plugin (custom WC modifikace) může deregistrovat plugin hooks. Check:
// V mu-plugin
add_action('woocommerce_order_status_completed', function($order_id) {
error_log('Order completed hook fired: ' . $order_id);
}, 1);
Pokud váš log fires ale plugin handler ne, někdo manipuloval s priority/removal.
4. Affiliate status
Pokud byl affiliate v mezičase suspended/rejected, plugin nevytvoří provizi i přes existující meta. Verifikujte v adminu.
5. Cookie expiration
Pokud uplynulo více než cookie duration (default 30 dní) mezi klikem a objednávkou, cookie už neexistuje a klik se na objednávku nepřiřadí.
6. Manual recalculation
Pokud znáte affiliate_id, můžete vytvořit provizi ručně přes CommissionManager:
wp eval '
$cm = new AffiniteWPAffiliateCommissionCommissionManager();
$cm->create_commission([
"affiliate_id" => 45,
"type" => "sale",
"amount" => 150,
"currency" => "CZK",
"description" => "Manual recovery for order #123",
"reference_id" => "order_123",
"status" => "pending",
]);'
