Commission invoice – Taxe on commission

We're shifting our Forum based support to a more dedicated support system!

We'll be closing our Forum support from 10th June, 2020 and move to Email Support assistance.

  • If you are a WCFM premium add-ons user, contact us- here
  • Want to know more before buying our add-ons? Send Pre sale queries- here
  • If you are a WCFM free user, please open a support ticket at WordPress.org
  • For WCFM App related queries, reach us- here
From now the forum will be read-only!

Multi Vendor Marketplace Plugin | WCFM Marketplace Forums WC Marketplace Commission invoice – Taxe on commission

Viewing 3 reply threads
  • Author
    Posts
    • #109215
      Nassima BENNAI
      Participant

      Hi,

      Here is how I setup my commission :

      commission : for admin
      commission mode : pourcentage
      expedition fees : for vendor
      taxes : for vendor
      commission calculated after coupon apply

      My problem : the taxe on commission. it’s calculated on the (total amount – commission) and not on the commission only.

      Ex.
      commission : 10% for admin
      Commission taxe : 20%
      Total cart : 1000€

      The result must be : 100€ commission for admin with 16,67€ taxe included (100 – 100 / 1 + 20% )
      The result given : 100€ commission + 180€ of taxes (1000 – 100 = 900 x 20% = 180)

      Any idea to fix it ?

      Thanks!

    • #109879
      WCFM Forum
      Member

      Hi,

      Well, by default commission tax always applicable on vendor’s commission amount.

      If you want to apply on Admin’s commission then add this code to your site –

      add_action( 'wcfmmp_order_item_processed', function( $commission_id, $order_id, $order, $vendor_id, $product_id, $order_item_id, $grosse_total, $total_commission, $is_auto_withdrawal ) {
      	global $WCFM, $WCFMmp, $wpdb;
      	
      	if( apply_filters( 'wcfm_is_admin_fee_mode', false ) ) {
      		$commission_rule   = unserialize( $WCFMmp->wcfmmp_commission->wcfmmp_get_commission_meta( $commission_id, 'commission_rule' ) );
      		
      		if( isset( $commission_rule['tax_enable'] ) && ( $commission_rule['tax_enable'] == 'yes' ) ) {
      			$gross_sale_order  = (float) $WCFM->wcfm_vendor_support->wcfm_get_gross_sales_by_vendor( $vendor_id, '', '', $order_id );
      			$commission_tax    = (float) $WCFMmp->wcfmmp_commission->wcfmmp_get_commission_meta( $commission_id, 'commission_tax' );
      			$total_commission += $commission_tax;
      			
      			$admin_fee = (float) $gross_sale_order - (float) $total_commission;
      		
      			$commission_tax = $admin_fee * ( (float)$commission_rule['tax_percent'] / 100 );
      			$total_commission -= (float) $commission_tax;
      			
      			$WCFMmp->wcfmmp_commission->wcfmmp_delete_commission_meta( $commission_id, 'commission_tax' );
      			$WCFMmp->wcfmmp_commission->wcfmmp_update_commission_meta( $commission_id, 'commission_tax', round($commission_tax, 2) );
      			$wpdb->update("{$wpdb->prefix}wcfm_marketplace_orders", array('total_commission' => $total_commission), array('ID' => $commission_id), array('%s'), array('%d'));
      			$wpdb->update("{$wpdb->prefix}wcfm_marketplace_vendor_ledger", array( 'credit' => $total_commission ), array( 'reference_id' => $commission_id ), array( '%s' ), array( '%d' ) );
      		}
      	}
      }, 50, 9 );

      Add this code to your child theme’s functions.php
      In case you do not have child theme then add code using this plugin – https://wordpress.org/plugins/code-snippets/

      Thank You

    • #116255
      Philip Baumgartner
      Participant

      Thank you, also helped me as I needed the same feature 🙂

    • #118336
      WCFM Forum
      Member

      Great … you are welcome 🙂

Viewing 3 reply threads
  • You must be logged in to reply to this topic.