HI,
Thanks for get in touch with us.
Well, all these are possible using WCFM and WCFM Marketplace.
1. Is it possible for the customer to receive a bank account of the vendor to whom the product was assigned after the purchase of the product and make a payment directly without the administrator and without providing any commission?
– For this you have to add this code to your child theme’s functions.php –
add_action( 'end_wcfm_vendor_settings', function( $vendor_id ) {
global $WCFM, $WCFMmp;
$wcfm_customer_payment_options = get_user_meta( $vendor_id, 'wcfm_customer_payment_options', true );
?>
<!-- collapsible -->
<div class="page_collapsible" id="wcfm_settings_form_min_order_amount_head">
<label class="wcfmfa fa-cart-plus"></label>
<?php _e('Customer Pay Option', 'wc-frontend-manager'); ?><span></span>
</div>
<div class="wcfm-container">
<div id="wcfm_settings_form_vendor_invoice_expander" class="wcfm-content">
<?php
$WCFM->wcfm_fields->wcfm_generate_form_field( array(
"wcfm_customer_payment_options" => array('label' => __('Payment Options', 'wc-frontend-manager'), 'type' => 'textarea', 'class' => 'wcfm-textarea wcfm_ele wcfm_full_ele', 'label_class' => 'wcfm_title wcfm_ele wcfm_full_ele_title', 'value' => $wcfm_customer_payment_options ),
) );
?>
</div>
</div>
<div class="wcfm_clearfix"></div>
<!-- end collapsible -->
<?php
}, 500 );
add_filter( 'wcfm_marketplace_settings_fields_billing', function( $setting_fields, $vendor_id ) {
if( !wcfm_is_vendor() ) {
$wcfm_customer_payment_options = get_user_meta( $vendor_id, 'wcfm_customer_payment_options', true );
$wcfm_customer_payment_options_field = array(
"wcfm_customer_payment_options" => array('label' => __('Customer Payment Options', 'wc-frontend-manager'), 'type' => 'textarea', 'class' => 'wcfm-textarea wcfm_ele', 'label_class' => 'wcfm_title wcfm_ele', 'value' => $wcfm_customer_payment_options ),
);
$setting_fields = array_merge( $wcfm_customer_payment_options_field, $setting_fields );
}
return $setting_fields;
}, 50, 2 );
add_action( 'wcfm_vendor_settings_update', function( $vendor_id, $wcfm_settings_form ) {
global $WCFM, $WCFMmp;
if( isset( $wcfm_settings_form['wcfm_customer_payment_options'] ) ) {
$wcfm_customer_payment_options = $wcfm_settings_form['wcfm_customer_payment_options'];
update_user_meta( $vendor_id, 'wcfm_customer_payment_options', $wcfm_customer_payment_options );
}
}, 500, 2 );
function wcfmmp_vendor_order_customer_payment_options( $order ) {
global $WCFM, $WCFMmp;
echo "<br /><br />";
echo "<h2 style='font-size: 18px; color: #17a2b8; line-height: 20px;margin-top: 6px;margin-bottom: 10px;padding: 0px;text-decoration: underline;'>" . __( 'Payment Details:', 'wc-frontend-manager-ultimate' ) . "</h2>";
echo "<table width='100%' style='width:100%;'><tbody>";
$order_items = $order->get_items( apply_filters( 'woocommerce_purchase_order_item_types', 'line_item' ) );
foreach ( $order_items as $item_id => $item ) {
$product_id = $item->get_product_id();
$vendor_id = $WCFM->wcfm_vendor_support->wcfm_get_vendor_id_from_product( $product_id );
if( !$vendor_id || !wcfm_is_vendor( $vendor_id ) ) continue;
$wcfm_customer_payment_options = get_user_meta( $vendor_id, 'wcfm_customer_payment_options', true );
if( !$wcfm_customer_payment_options ) continue;
?>
<tr>
<td colspan="3" style="background-color: #eeeeee;padding: 1em 1.41575em;line-height: 1.5;font-weight:600;"><?php echo get_the_title( $product_id ); ?></td>
<td colspan="5" style="background-color: #f8f8f8;padding: 1em;"><?php echo wpautop($wcfm_customer_payment_options); ?></td>
</tr>
<?php
}
echo "</tbody></table>";
echo "<br /><br /><br /><br />";
}
add_action( 'woocommerce_order_details_after_order_table', 'wcfmmp_vendor_order_customer_payment_options', 50 );
add_action( 'woocommerce_email_order_meta', 'wcfmmp_vendor_order_customer_payment_options', 50 );
Thank You