Auctions for WooCommerceAuctions for WooCommerce
Buy Now
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Onboarding Tour
  • Admin Guide

    • Admin Overview
    • Dashboard
    • All Auctions
    • Add / Edit Auction
    • Bids
    • Reports
    • Events
    • Wallet
    • Disputes
    • Blocked Users
    • Fraud Detection
    • Tools (Import / Export)
    • Settings
    • Design Studio
    • Pending Review
    • Audit Log
  • Auction Mechanics

    • Auction Types
    • Bidding Engine
    • Anti-Sniping
    • Bid Increments
    • Reserve & Buy Now
    • Auto-Relist
    • Watchlist
  • Customer Experience

    • Customer Overview
    • My Auctions
    • My Wallet
    • Withdrawal
    • Single Auction Page
    • Notifications
  • Wallet & Payments

    • Wallet System
    • Auto-Charge
    • Stripe Connect
    • Monetization Fees
  • Multi-Vendor & Integrations

    • Multi-Vendor Compatibility
    • Twilio SMS
    • Firebase Push
    • Two-Factor Auth
    • Captcha
    • Social Login
    • Subscription Gate
    • Elementor & Gutenberg
  • Premium Features

    • Smart Features
    • Psychology Triggers
    • Gamification
    • Fraud Detection
    • Compliance
    • Social Sharing
    • Email Notifications
  • Developer

    • REST API
    • Hooks & Filters
    • JS Events
    • Database Schema
    • Shortcodes
    • Options Reference
    • WP-CLI
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
    • Changelog
Support
Buy Now
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Onboarding Tour
  • Admin Guide

    • Admin Overview
    • Dashboard
    • All Auctions
    • Add / Edit Auction
    • Bids
    • Reports
    • Events
    • Wallet
    • Disputes
    • Blocked Users
    • Fraud Detection
    • Tools (Import / Export)
    • Settings
    • Design Studio
    • Pending Review
    • Audit Log
  • Auction Mechanics

    • Auction Types
    • Bidding Engine
    • Anti-Sniping
    • Bid Increments
    • Reserve & Buy Now
    • Auto-Relist
    • Watchlist
  • Customer Experience

    • Customer Overview
    • My Auctions
    • My Wallet
    • Withdrawal
    • Single Auction Page
    • Notifications
  • Wallet & Payments

    • Wallet System
    • Auto-Charge
    • Stripe Connect
    • Monetization Fees
  • Multi-Vendor & Integrations

    • Multi-Vendor Compatibility
    • Twilio SMS
    • Firebase Push
    • Two-Factor Auth
    • Captcha
    • Social Login
    • Subscription Gate
    • Elementor & Gutenberg
  • Premium Features

    • Smart Features
    • Psychology Triggers
    • Gamification
    • Fraud Detection
    • Compliance
    • Social Sharing
    • Email Notifications
  • Developer

    • REST API
    • Hooks & Filters
    • JS Events
    • Database Schema
    • Shortcodes
    • Options Reference
    • WP-CLI
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
    • Changelog
Support
  • Getting Started

    • Introduction
    • Quick Start
    • Feature Catalog
    • Installation
    • First-Time Setup
    • Onboarding Tour
  • Admin Guide

    • Admin Overview
    • Dashboard
    • All Auctions
    • Add / Edit Auction
    • Bids
    • Reports
    • Events
    • Wallet (Admin)
    • Disputes
    • Blocked Users
    • Fraud Detection
    • Tools
    • Settings
    • Design Studio
    • Pending Review
    • Audit Log
  • Auction Mechanics

    • Auction Types
    • Bidding Engine
    • Anti-Sniping (Soft Close)
    • Bid Increments
    • Reserve & Buy Now
    • Auto-Relist
    • Watchlist
  • Customer Experience

    • Customer Experience Overview
    • My Auctions
    • My Wallet
    • Withdrawal
    • Single Auction Page
    • Customer Notifications
  • Wallet & Payments

    • Wallet System
    • Wallet Auto-Charge
    • Stripe Connect
    • Monetization
  • Multi-Vendor & Integrations

    • Multi-Vendor Compatibility
    • Twilio SMS
    • Firebase (Push Notifications)
    • Two-Factor Authentication
    • Captcha
    • Social Login
    • Subscription Gate
    • Elementor & Gutenberg
  • Premium Features

    • Smart Features
    • Psychology Triggers
    • Gamification
    • Fraud Detection
    • Compliance
    • Social Sharing
    • Email Notifications
  • Developer

    • REST API
    • Hooks & Filters
    • JavaScript Events
    • Database Schema
    • Shortcodes
    • Options Reference
    • WP-CLI
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
    • Changelog

Hooks & Filters

200+ extension points for customizing the plugin. Grouped by subsystem.

For the full machine-generated list with file:line, see the plugin's docs/hooks-filters.md.

Conventions

  • Actions — do_action( 'wkafw_*' ) — fire-and-forget events
  • Filters — apply_filters( 'wkafw_*' ) — return-value modifiers
  • All hooks are prefixed wkafw_ to avoid collisions
  • Wallet-specific hooks may use wkwc_wallet_* prefix (submodule)

Bidding {#bidding}

apply_filters( 'wkafw_pre_place_bid',         $passed,    $auction_id, $user_id, $amount );
apply_filters( 'wkafw_validate_bid',          $valid,     $auction_id, $user_id, $amount );
apply_filters( 'wkafw_bid_amount',            $amount,    $context );
apply_filters( 'wkafw_bid_meta',              $meta,      $auction_id, $user_id );
apply_filters( 'wkafw_required_increment',    $increment, $auction_id, $current_price );
apply_filters( 'wkafw_increment_tiers',       $tiers,     $auction_id );
apply_filters( 'wkafw_min_bid_amount',        $min,       $auction_id );
do_action(    'wkafw_bid_placed',             $bid );
do_action(    'wkafw_bid_failed',             $reason,    $context );
do_action(    'wkafw_bid_retracted',          $bid );

Auction lifecycle {#auction-lifecycle}

do_action(    'wkafw_auction_created',        $auction_id );
do_action(    'wkafw_auction_published',      $auction_id );
do_action(    'wkafw_auction_started',        $auction_id );
do_action(    'wkafw_auction_ending_soon',    $auction_id, $minutes_left );
do_action(    'wkafw_auction_ended',          $auction_id, $winner_id, $winning_bid );
do_action(    'wkafw_auction_paid',           $auction_id, $order_id );
do_action(    'wkafw_auction_failed',         $auction_id );
do_action(    'wkafw_auction_cancelled',      $auction_id );
do_action(    'wkafw_auction_paused',         $auction_id );
do_action(    'wkafw_auction_resumed',        $auction_id );
apply_filters( 'wkafw_auction_winner',        $winner_id, $auction_id );
apply_filters( 'wkafw_auction_should_extend', $should,    $auction_id, $bid_id );

Anti-snipe {#anti-snipe}

do_action(    'wkafw_anti_snipe_triggered',   $auction_id, $extension_seconds );
apply_filters( 'wkafw_anti_snipe_window',     $window,     $auction_id );
apply_filters( 'wkafw_anti_snipe_extension',  $extension,  $auction_id );
apply_filters( 'wkafw_anti_snipe_max_cap',    $cap,        $auction_id );

Auto-relist {#auto-relist}

do_action(    'wkafw_auction_relisted',         $new_id, $original_id, $attempt );
do_action(    'wkafw_relist_attempts_exhausted', $auction_id );
apply_filters( 'wkafw_relist_eligible',         $eligible,   $auction_id );
apply_filters( 'wkafw_relist_params',           $params,     $auction_id, $attempt );
apply_filters( 'wkafw_relist_start_date',       $start,      $auction_id, $attempt );
apply_filters( 'wkafw_relist_reserve',          $reserve,    $auction_id, $attempt );

Watchlist {#watchlist}

do_action(    'wkafw_watch_added',          $user_id, $auction_id );
do_action(    'wkafw_watch_removed',        $user_id, $auction_id );
apply_filters( 'wkafw_auto_watch_on_bid',   $auto, $user_id, $auction_id );
apply_filters( 'wkafw_show_watchers',       $show, $auction_id );
apply_filters( 'wkafw_watcher_count',       $count, $auction_id );

Wallet {#wallet}

do_action(    'wkafw_wallet_credited',         $user_id, $amount, $reference );
do_action(    'wkafw_wallet_debited',          $user_id, $amount, $reference );
do_action(    'wkafw_wallet_transfer',         $sender, $recipient, $amount );
apply_filters( 'wkafw_wallet_balance',         $balance, $user_id );
apply_filters( 'wkafw_wallet_can_partial_pay', $allowed, $user_id, $order );
apply_filters( 'wkafw_pre_charge_fee',         $charged, $fee_args );

Wallet withdrawal {#wallet-withdrawal}

do_action(    'wkafw_wallet_withdrawal_requested', $request_id, $user_id, $amount );
do_action(    'wkafw_wallet_withdrawal_approved',  $request_id );
do_action(    'wkafw_wallet_withdrawal_paid',      $request_id );
do_action(    'wkafw_wallet_withdrawal_rejected',  $request_id, $reason );
apply_filters( 'wkafw_wallet_withdrawal_can_request', $allowed, $user_id, $amount );
apply_filters( 'wkafw_wallet_withdrawal_methods',     $methods, $user_id );

Auto-charge {#auto-charge}

apply_filters( 'wkafw_auto_charge_enabled',  $enabled, $auction_id );
apply_filters( 'wkafw_auto_charge_amount',   $amount,  $auction_id, $user_id );
apply_filters( 'wkafw_auto_charge_partial',  $allow,   $auction_id, $user_id );
do_action(    'wkafw_auto_charge_succeeded', $auction_id, $user_id, $amount, $order_id );
do_action(    'wkafw_auto_charge_failed',    $auction_id, $user_id, $reason );

Monetization {#monetization}

apply_filters( 'wkafw_listing_fee_amount',    $amount, $auction_id );
apply_filters( 'wkafw_buyers_premium_amount', $amount, $bid_amount, $auction_id );
apply_filters( 'wkafw_bid_fee_amount',        $amount, $auction_id, $user_id );
apply_filters( 'wkafw_late_penalty_amount',   $amount, $order_id, $hours_late );
apply_filters( 'wkafw_seller_commission',     $rate,   $auction_id, $vendor_id );
do_action(    'wkafw_fee_charged',           $fee_type, $amount, $user_id );

Auction types {#auction-types}

apply_filters( 'wkafw_auction_types',         $types );
apply_filters( 'wkafw_auction_type_handler',  $handler, $type );
apply_filters( 'wkafw_auction_type_fields',   $fields, $type );

Multi-vendor {#multi-vendor}

apply_filters( 'wkafw_vendor_adapter',           $adapter );
apply_filters( 'wkafw_vendor_commission_rate',   $rate, $vendor_id, $auction_id );
do_action(    'wkafw_vendor_commission_recorded', $vendor_id, $auction_id, $amount );
do_action(    'wkafw_vendor_payout',             $vendor_id, $amount );
apply_filters( 'wkafw_vendor_can_create_auction', $can, $vendor_id, $args );

User management {#user-management}

do_action(    'wkafw_user_blocked',    $user_id, $reason, $expires_at );
do_action(    'wkafw_user_unblocked',  $user_id );
apply_filters( 'wkafw_can_bid',         $allowed, $user_id, $auction_id );

Lot review {#lot-review}

do_action(   'wkafw_lot_submitted',   $auction_id, $vendor_id );
do_action(   'wkafw_lot_approved',    $auction_id, $vendor_id );
do_action(   'wkafw_lot_rejected',    $auction_id, $vendor_id, $reason );
apply_filters( 'wkafw_lot_review_required', $required, $auction_id, $vendor_id );
apply_filters( 'wkafw_lot_auto_approve',    $auto, $auction_id, $vendor_id );

Disputes {#disputes}

do_action(    'wkafw_dispute_created',   $dispute_id );
do_action(    'wkafw_dispute_status',    $dispute_id, $old, $new );
do_action(    'wkafw_dispute_resolved',  $dispute_id, $resolution );
do_action(    'wkafw_dispute_refund',    $dispute_id, $amount );

Fraud detection {#fraud}

apply_filters( 'wkafw_fraud_rules',          $rules );
apply_filters( 'wkafw_fraud_can_bid',        $allowed, $user_id, $auction_id, $context );
do_action(    'wkafw_fraud_signal',          $user_id, $rule, $payload );
do_action(    'wkafw_fraud_auto_block',      $user_id, $rule );

Audit log {#audit-log}

do_action(    'wkafw_audit_log_recorded',   $event_id, $event );
apply_filters( 'wkafw_audit_log_payload',   $payload, $type, $action );

Notifications {#notifications}

apply_filters( 'wkafw_notification_channels',     $channels, $user_id, $event );
apply_filters( 'wkafw_notification_should_send',  $should,   $user_id, $event );
do_action(    'wkafw_notification_sent',          $user_id, $channel, $event );

Emails {#emails}

apply_filters( 'wkafw_email_recipients',   $recipients, $email_id, $context );
apply_filters( 'wkafw_email_subject',      $subject,    $email_id, $context );
apply_filters( 'wkafw_email_should_send',  $should,     $email_id, $user_id );
do_action(    'wkafw_email_sent',         $email_id, $user_id );

Twilio {#twilio}

apply_filters( 'wkafw_twilio_should_send', $should, $user_id, $event );
apply_filters( 'wkafw_twilio_template',    $template, $event );
do_action(    'wkafw_twilio_sent',        $sid, $user_id, $event );
do_action(    'wkafw_twilio_failed',      $error, $user_id, $event );

Firebase {#firebase}

apply_filters( 'wkafw_firebase_should_push', $should, $user_id, $event );
apply_filters( 'wkafw_firebase_payload',     $payload, $user_id, $event );
do_action(    'wkafw_firebase_pushed',       $user_id, $event, $response );

CAPTCHA {#captcha}

apply_filters( 'wkafw_captcha_required',  $required, $context );
apply_filters( 'wkafw_captcha_provider',  $provider, $context );
apply_filters( 'wkafw_captcha_min_score', $score, $context );
do_action(    'wkafw_captcha_passed',    $context, $user_id );
do_action(    'wkafw_captcha_failed',    $context, $user_id, $reason );

Tracking & Marketing {#tracking}

apply_filters( 'wkafw_tracking_should_send', $should, $provider, $event, $user_id );
apply_filters( 'wkafw_tracking_payload',     $payload, $provider, $event );
do_action(    'wkafw_tracking_sent',         $provider, $event, $response );

Single auction page {#single-auction}

apply_filters( 'wkafw_single_auction_components', $components, $auction_id );
apply_filters( 'wkafw_bid_form_layout',           $layout, $auction_id );
do_action(    'wkafw_before_bid_form',           $auction_id );
do_action(    'wkafw_after_bid_form',            $auction_id );
apply_filters( 'wkafw_show_bid_history',          $show, $auction_id );

Customer endpoints {#customer-endpoints}

apply_filters( 'wkafw_my_auctions_tabs',          $tabs );
apply_filters( 'wkafw_my_auctions_query_args',    $args, $tab, $user_id );
do_action(    'wkafw_my_auctions_tab_*',         $user_id );  // per-tab

Reports {#reports}

apply_filters( 'wkafw_reports_views', $views );

Tools {#tools}

apply_filters( 'wkafw_csv_field_mappings',  $mappings );
do_action(    'wkafw_csv_import_started',   $batch_id, $row_count );
do_action(    'wkafw_csv_import_done',      $batch_id, $results );
do_action(    'wkafw_tool_run',             $tool, $args, $result );

Design Studio {#design}

apply_filters( 'wkafw_design_tokens', $tokens );
apply_filters( 'wkafw_design_layout', $layout, $auction );
do_action(    'wkafw_design_saved',  $design );

Builders {#builders}

apply_filters( 'wkafw_elementor_widgets',  $widgets );
apply_filters( 'wkafw_gutenberg_blocks',   $blocks );
apply_filters( 'wkafw_block_query_args',   $args, $block_attrs );

Stripe {#stripe}

apply_filters( 'wkafw_stripe_charge_args',     $args, $order );
apply_filters( 'wkafw_stripe_should_charge',   $should, $auction_id );
do_action(    'wkafw_stripe_charge_succeeded', $charge_id, $auction_id );
do_action(    'wkafw_stripe_charge_failed',    $error, $auction_id );

Payments {#payments}

apply_filters( 'wkafw_allowed_gateways',          $allowed, $auction_id );
apply_filters( 'wkafw_payment_deadline_hours',    $hours, $auction_id );
apply_filters( 'wkafw_should_use_escrow',         $use_escrow, $auction_id, $bid_amount );
do_action(    'wkafw_payment_received',           $order_id, $auction_id );
do_action(    'wkafw_payment_overdue',            $order_id, $auction_id );

Events {#events}

do_action( 'wkafw_event_created',    $event_id );
do_action( 'wkafw_event_started',    $event_id );
do_action( 'wkafw_event_ended',      $event_id );
do_action( 'wkafw_event_registered', $event_id, $user_id, $order_id );
do_action( 'wkafw_event_cancelled',  $event_id );

Common usage patterns

Block bids based on a custom condition

add_filter( 'wkafw_pre_place_bid', function( $passed, $auction_id, $user_id, $amount ) {
    if ( my_user_is_in_blacklist_country( $user_id ) ) {
        return new WP_Error( 'country_blocked', 'Bidding not allowed from your country.' );
    }
    return $passed;
}, 10, 4 );

Send a Slack notification on every win

add_action( 'wkafw_auction_ended', function( $auction_id, $winner_id, $winning_bid ) {
    if ( $winning_bid > 5000 ) {
        my_slack_notify( "🏆 Winner of auction #{$auction_id}: {$winning_bid}" );
    }
}, 10, 3 );

Override commission for a specific vendor

add_filter( 'wkafw_vendor_commission_rate', function( $rate, $vendor_id, $auction_id ) {
    if ( $vendor_id == 12 ) return 5; // 5% for vendor 12
    return $rate;
}, 10, 3 );

Add a custom column to the bids admin table

add_filter( 'wkafw_admin_bid_columns', function( $columns ) {
    $columns['my_score'] = 'Risk Score';
    return $columns;
} );

add_action( 'wkafw_admin_bid_column_my_score', function( $bid ) {
    echo esc_html( my_compute_risk_score( $bid ) );
} );

See also

  • REST API
  • JS Events
  • Database Schema
  • Options Reference
  • Shortcodes
  • WP-CLI
Prev
REST API
Next
JavaScript Events