Multi Vendor Marketplace Plugin | WCFM Marketplace › Forums › WCFM – Marketplace (WooCommerce Multivendor Marketplace) › Vendor buyer direct payment ?
- This topic has 36 replies, 9 voices, and was last updated 3 years, 8 months ago by joemark0008.
- AuthorPosts
- June 13, 2019 at 12:41 pm #67374todor.ganchevParticipant
Is it possible to setup WCFM Marketplace in such a way that vendors will get paid directly by customers, and only pay the site owner a monthly membership fee for being a member and selling through the marketplace?
- June 13, 2019 at 9:12 pm #67494WCFM ForumKeymaster
Hi,
This is now possible only using Stripe.
Between, which payment gateway you want to use?
Thank You
- June 14, 2019 at 8:22 am #67580CommunityCoralsParticipant
You guys are working on a custom development for me to achieve what todor is asking for. I still wait for finalization. If all agree I could post snippet once finished.
Thanks
Dominique - June 14, 2019 at 2:20 pm #67632todor.ganchevParticipant
Stripe is not available for Bulgaria, so with regard to your question: I think of using PayPal because it is the most popular payment gateway, but I am ready to accept any reasonable suggestion.
I want to know if it is possible to achieve the thing I am asking for with to a custom development? - June 15, 2019 at 5:11 pm #67884WCFM ForumKeymaster
Hi,
PayPal has “Adaptive API” for the purpose, but they have now deprecated that.
Now, PayPal has a new API – Marketplace API, but PayPal only provided access for this to limited users.
Are you able to get approval from PayPal for using this?
Thank You
- June 16, 2019 at 11:52 am #67955todor.ganchevParticipant
I am not sure that I would get approval, so I could make a request. What am I suppossed to do if I get a negative answer? What are my options further?
- June 16, 2019 at 12:30 pm #67956CommunityCoralsParticipant
I tried to apply at Paypal with no response. Below 1M € paypal revenue chances aren´t good.
I think with reverse withdrawal it would make a lot of sense to provide the payment model as it is done by ebay. At ebay the buyer directly pays to the vendor and ebay provides a bill for the commission without managing the payment and deducting commission instantly. I guess it is technically quite easy and would make a lot of sense also for other of your customers to impement a model like described below?
“What I would like to do is just having cash-on-delivery option so direct payment from customer to vendor. To make this as handy as possible for the customer I would like to print the payment details and options the vendor provides directly on the order confirmation mail.”
This way customer directly pays to vendor and admin can utilize reverse withdrawal to charge fees if required.
@WCFM: Any update on that custom development? - June 16, 2019 at 1:28 pm #67961todor.ganchevParticipant
Thanks for your qick response.
The payment model you have described is OK.
Is it possible to get such custom development for me?
Does WCFM Marketplace work with MangoPay? - June 18, 2019 at 12:54 pm #68338WCFM ForumKeymaster
HI,
Is it possible to get such custom development for me?
– Which payment gateway you want to use?Does WCFM Marketplace work with MangoPay?
– Not yetThank You
- June 18, 2019 at 6:41 pm #68447todor.ganchevParticipant
I think of using PayPal, but if you have any reasonable suggestion I am ready to accept it.
- June 21, 2019 at 6:42 pm #68933WCFM ForumKeymaster
Hi,
OK, we can setup this using PayPal.
But there will be few conditions –
1. One order will contain only one vendor’s products
2. Full amount will go into Vendor’s PayPal account, no split payment. You may track commission using “Reverse Withdrawal”
3. Vendor’s PayPal account should be a business accountThank You
- June 21, 2019 at 8:06 pm #68959CommunityCoralsParticipant
May I ask if you guys are also working on my custom development described before? As I would like to allow orders from multiple vendors without paypal business account I think I would still go with providing payment details in order confirmation mail. So no Payment getaway required. You have the specifications and I got a first draft of the functionality but it was kind of basic. If you agree I could post the code here for you to understand the current state of the functionality.
Thanks
Dominique - June 26, 2019 at 12:21 pm #69725WCFM ForumKeymaster
@CommunityCorals, your solution was for “offline” payment. Just vendor’s payment details sharing with customer.
But, I think this user looking for online payment from WC checkout directly into vendor’s PayPal account!
Between, you may share that code, it’s your choice.
Thank You
- June 26, 2019 at 12:31 pm #69732CommunityCoralsParticipant
@communitycorals, your solution was for “offline” payment. Just vendor’s payment details sharing with customer.
Unfortunately, the code doesn´t provide the functionality we agreed upon. Its very basic and has still bugs I reported. When I asked to review and improve I haven´t got any response on my mails. Would be great if you could check if there may be any communication issue which caused this confusion? Anyways here a snippet for the other users to check if this maybe provides some help. I can also share a final version once I received revised code.
Thanks
Dominiqueadd_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_general’, 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 ); - July 1, 2019 at 1:43 pm #70547CommunityCoralsParticipant
HI, as I haven´t received any feedback it seems like I have to work with what you have send me?
As I can´t wait I unfortunately have to proceed with current status. Is there any possibility to add an explanation to the customer Pay Option? No one will understand how this works.
Also it would be great if the text field can be adjusted in size so that it is bigger.
Thanks
DominiqueAttachments:
You must be logged in to view attached files. - July 4, 2019 at 5:22 am #70934WCFM ForumKeymaster
HI,
As I can´t wait I unfortunately have to proceed with current status. Is there any possibility to add an explanation to the customer Pay Option? No one will understand how this works.
– Well, that’s not a big deal. It’s off course possible to add explanation here for this setting tab.
Pleas send me what you want to say here to your vendors, I will add that in code.
Thank You
- July 4, 2019 at 5:40 am #70947CommunityCoralsParticipant
Hello,
text could be: “Please add your payment details as plain text like e.g. “Paypal: paypal.me/communitycorals/”. The customer gets this information as soon as order has been placed”.
What I have to say is that the payment information is shown for every order item. My average is like 8 items per order so this is kind og messy and not what has been specified. Would be great if you could also check the code in regards of this issue. Actuually it was planned to print the information per vendor rather than order item.
Below FYI the original specs:
The paypal.me option also is supposed to be presented in the form of a button to the customer. This button should consist of the paypal.me url and the price of the order so that the amount the customer has to pay is directly populated in the paypal.me link.
Specs:
Here the seller can choose via checkmark which payment options he wants to offer. Fields that are available are:
• Paypal.me (https://www.paypal.me/ is prepopulated and vendor can fill text field like e.g. CommunityCorals to generate https://www.paypal.me/communitycorals as a result. This Link should be visible as button in the new order mail.
• Bank account
• Other payment options (Free text field)In every order confirmation I would provide an “area” where the payment details of a vendor can be found. If there are multiple vendors there should be multiple “areas”.
Like
Area 1 – Payment Details Vendor KorallensuchtBank Transfer
Name: Korallensucht Peter Maier
IBAN: DE 12094583405834Paypal
Paypal address: domdeutz@arcor.de
Pay via Paypal.me: (Button Pay now via paypal me Link to e.g. https://www.paypal.me/dominiquedeutzmann/99,90) - July 10, 2019 at 11:41 am #71825todor.ganchevParticipant
Hi,
OK, we can setup this using PayPal.
But there will be few conditions –
1. One order will contain only one vendor’s products
2. Full amount will go into Vendor’s PayPal account, no split payment. You may track commission using “Reverse Withdrawal”
3. Vendor’s PayPal account should be a business accountI accept the conditions….
My colleague has sent you an email and now she is waiting for the code, please inform me if something else should be done - July 13, 2019 at 7:49 am #72258WCFM ForumKeymaster
Yeah, we will send a custom addon for this.
We are working on that addon.
Thank You
- July 14, 2019 at 5:09 am #72406zoltan.b.feherParticipant
Hi Team,
Exactly this is what I wanted to have with a customization request. Can you please share the add on with me as well?
zoltan.b.feher (at) gmail.com
Thank you!
- July 14, 2019 at 6:47 am #72420CommunityCoralsParticipant
- July 16, 2019 at 6:11 am #72620ing.rappariniParticipant
This will be useful also for me…and I think for many others…so please develop this funcionality and let every store put his own paypal direct payment!!!
- July 22, 2019 at 8:22 pm #73481CommunityCoralsParticipant
Hi,
I received this feedback from you:
– Well, that’s not a big deal. It’s off course possible to add explanation here for this setting tab.
Please send me what you want to say here to your vendors, I will add that in code.
I send you the info and as I haven´t got any response I launched my website in US with the custom development you provided. Result is that the first vendor that signed up reported the payment field as a bug. That is very embarassing. Can you please help? I am willing to pay additional money but I need solution as we discussed before. Please contact me at info@communitycorals.de
Thanks & BR
Dominique - July 24, 2019 at 8:40 pm #73769todor.ganchevParticipant
Do you have any idea how long it would take to finish it completely?
Regards,
- August 5, 2019 at 6:13 am #75260todor.ganchevParticipant
To CommunityCorals
Hi, I want to ask you do you resolve the issue of payments on your site. I have a problem with payments and I do not know how to solve it.I would be grateful if you would give me any advice.
- August 5, 2019 at 6:23 am #75265CommunityCoralsParticipant
Hey, actually I am also not that happy with my solution. As much as I love the WC Lovers they for some reason didn´t a good job on my payed custom work.
You may add the above code to your functions php. This will give vendors the possibility of a free text field (was specified differently) where they can add their payment details like paypal.me bank details etc. When customer places an order the customer gets this information on thank you page and order confirmation mail. So customer can do a manual payment directly to vendor.
BR
Dominique - August 5, 2019 at 6:25 am #75266CommunityCoralsParticipant
P.S. unfortunately the payment details are shown many times on tahank you page and order confirmations. Once per order line item…
- August 5, 2019 at 6:57 am #75273todor.ganchevParticipant
Thanks for the quick reply, I’ll see the code
- August 6, 2019 at 3:50 pm #75513WCFM ForumKeymaster
Hi,
Here is that addon – https://drive.google.com/file/d/1eifxzAuNtKYjpE0K6E8fApb_ZVtx8-zH/view?usp=sharing
You have to set Vendor’s PayPal API details from Vendor Setting -> Payment – https://ibb.co/gdwzGYZ
Note: We will release this addon at WordPress repository soon! It will perform much better after WCFM Marketplace next update, specially for “withdrawal” as here withdrawal will be “Reverse Withdrawal” and this will be ensure automatically by this addon.
Thank You
- August 7, 2019 at 1:15 pm #75633Cap LuisParticipant
There is an issue that should be reviewed!
If I use more than one purchase payment gateway, when my customer purchases with my country gateway that is not PAYPAL. I need to transfer the money through the BANK, and if the customer uses paypal the provider will receive it directly to their paypal account.
In this case in the vendor withdrawal options you should allow to choose more than one withdrawal form!
So when the customer uses the other gateway that is not paypal I have the bank account data (for example) of the registered supplier. And when the customer uses paypal, the provider has their paypal account registered in the same way.
You may wonder why use two gateways! In my country we often use the Barcode Invoice option for payment, and paypal does not offer this option. That’s why I need another gateway.
In this case the supplier would have to have two forms of withdrawal at the same time, so I will have the bank details for when I need to send the money manually.
- August 7, 2019 at 6:20 am #75612todor.ganchevParticipant
Thank You guys,
you’ve done a great job.
last night i did tests in the sandbox and it works perfectly.
Thank You - August 7, 2019 at 10:13 pm #75674macnomoParticipant
Hey Guys,
Just realized that PayPal doesn’t accept my country’s currency!You WC Lovers, mention Stripe!
What’s the name of the Sripe service? Will it allow to charge by percentage or only a membership?Thanks
- August 8, 2019 at 3:49 pm #75783WCFM ForumKeymaster
Hi,
What’s the name of the Sripe service? Will it allow to charge by percentage or only a membership?
– You may use Stripe for both the purpose – Membership payment and Commission Payout
Thank You
- April 24, 2020 at 11:12 am #122404HenrietteParticipant
I hope you don’t mind me bumping this topic but I tried above code and in Vendor Dashboard the field for Bank Details is visible.
But when making a test purchase and choose Bank Payment the Bank details are not shown on the finish page and also not in the customer email.
What am I doing wrong?Right now I use store invoice for this purpose so bank details are visible in the PDF that is sent in customer email.
But first of all in Store Invoice I can not mark order as sent because the Shipping Tracking info is required and sometimes we don’t have this in my country (see other topic).But second I would rather have the Bank details directly shown in the customer email instead of an pdf attachment.
Attachments:
You must be logged in to view attached files. - August 3, 2020 at 5:35 am #159971joemark0008ParticipantThis reply has been marked as private.
- August 3, 2020 at 5:45 am #159972
- AuthorPosts
- You must be logged in to reply to this topic.