IMPORTANT NOTE
This documentation was written when PayPal Classic Express Checkout was being used as the PayPal gateway. This is no deprecated and should no longer be used!
This documentation is still accurate except for the use of "PayPal Classic Express Checkout" instead of "PayPal Complete Payments."
We are in the process of updating our docs accordingly. Until then, please make sure you're using PayPal Complete Payments. The rest of the guide should align pretty well.
Introduction
If you use the WC Vendors Marketplace or WC Vendors Pro plugin in your WordPress shop, and you want to support PayPal payments as well, there is no out of the box solution provided by WC Vendors.
However, you can use our PayPal for WooCommerce plugin with its PayPal for WooCommerce Multi-Account Management add-on to send PayPal payments directly to multiple accounts.
Moreover, we’ve worked closely with the team at WC Vendors to roll out a new feature to our PayPal for WooCommerce Multi-Account Management add-on that brings full support to WC Vendors Marketplace / WC Vendors Pro!
In this tutorial, we’ll show you how to use this new feature to integrate PayPal payments into your WordPress marketplace and have the order payments sent directly to the vendors’ PayPal accounts.
How Will It Work?
Once we’ve configured all the required plugins, we should have a system where:
- Whenever a site owner approves a vendor sign-up request, their PayPal account will automatically be added to the system, ready to receive payments to orders for their products.
- As a site owner, you can set a global or vendor-specific commission that will be sent to your PayPal account for each order.
- An order may include multiple items from different vendors, in which case the vendor payments will be split based on the individual item’s price. Order commissions will be paid out accordingly as well.
- The site owner never touches the money. The payments are sent directly from the buyer’s PayPal account to the vendor.
1. Install and Set up PayPal for WooCommerce Plugin
PayPal for WooCommerce
After installing and setting up PayPal for WooCommerce plugin, you will have a primary PayPal account configured in your WooCommerce shop that can receive commissions on orders!
2. Install PayPal for WooCommerce Multi-Account Management Add-On
PayPal for WooCommerce Multi-Account Management Add-On
Please download the plugin and install it. After that, you’re ready to move to the next step.
3. Enable Automatic Rule Creation for WC Vendors
- Make sure you’ve installed and WC Vendors Marketplace before trying out this step. Otherwise, the WC Vendors specific integrations in PayPal for WooCommerce Multi-Account Management plugin will not be available.
- Next, we’ll go ahead and enable “Automatic Rule Creation” in the settings page of the PayPal for WooCommerce Multi-Account Management plugin.
- You can also enable the “PayPal Sandbox for Automatic Rule Creation” option if you want to test out your setup in a PayPal sandbox environment.
4. Add Global Site Owner Commission Percentage (Optional)
- If you, as a site owner, wish to receive a certain percentage of the total amount on every order as commission, then you can set up a Global Site Owner Commission with the PayPal for WooCommerce Multi-Account Management add-on.
- The commission is sent to the primary account configured with the PayPal for WooCommerce plugin.
- You can set the commission percentage in “WP Dashboard > WooCommerce > Settings > PayPal Multi-Account Setup > Settings”
That’s it! After these steps, any newly approved vendors will have their PayPal account automatically added to the secondary accounts list in PayPal for WooCommerce Multi-Account Management add-on.
Let’s See Our Setup in Action
Let’s take a complete example and see our set up in action!
Primary Account
I have configured a primary account in the Express Checkout page of the PayPal for WooCommerce plugin, and this account will receive a commission from orders.
A New Vendor is Approved
- You can see that after an admin approves the new vendor, a new secondary account has been created in the accounts listing page at “WP Dashboard > WooCommerce > Settings > PayPal Multi-Account Setup.”
- You can also notice that an author-specific trigger condition is set for this account. So the payments for this account will be sent out whenever an order comes through for this particular vendor’s product.
I’ve gone ahead and signed up three vendors with sandboxed PayPal accounts. I have also added a few products for each vendor.
Global Site Owner Commission
- I have also set up a Global Site Owner Commission of 5% with PayPal for WooCommerce Multi-Account Management add-on.
- Note that you also have an option to set a different commission percentage for each vendor. Check out our setup guide for information on how to do that.
An Order Is Placed for Account Two’s Hoodie
- The total price on the order is $42
- The commission that should be sent to Account One (primary account) is 5% of $42, which is $2.1
- The final amount sent to Account Two is: $42 – $2.1 = $39.9
- Note that apart from the commission, the vendor’s money is never touched by the site owner’s PayPal account, thus preventing issues from conflicts and chargebacks.
An Order Comes in For Products from All Vendors
- The Order includes (Total $102):
- 1 product from Account Two ( Total $42, after commission deduction, $39.9)
- 1 product from Account Three ( Total $20, after commission deduction, $19)
- 1 product from Account Four ( Total $40, after commission deduction, $38)
- The total commission to be sent to Account One is $5.1
Conclusion
We saw how our solution elegantly handles PayPal payments for WC Vendors Marketplace and WC Vendors Pro.
Our payment solution for WC Vendors is low maintenance, set it up once and forget about it!
We’ve also taken care of essential things such as security and clubbing payments from multiple orders into just one PayPal transaction, resulting in the lowest fee possible for you and all the vendors.
Looking for Live Help?
Schedule a live meeting with Drew Angell, PayPal Certified Developer, and get all of your questions or concerns answered.
Featured PayPal Products and Services
-
PayPal Support
$100.00 -
PayPal for WooCommerce
FREE! -
WooCommerce Multiple PayPal Accounts Plugin
FREE! -
PayPal Shipment Tracking for WooCommerce
$49.99 -
Offers for WooCommerce
$59.99 -
WordPress PayPal Invoice Plugin
$20.00 -
PayPal Webhooks for WordPress
$79.99 -
Sale!
PayPal IPN for WordPress
Original price was: $59.99.$49.99Current price is: $49.99.
Thanks for this great tutorial. The steps you show are are almost exactly what I’m looking for, but there’s a small tweak.
Let’s Say Markeptlace1 have a few vendors and on one order the client purchases from 3 different vendors.
40 from vendor 1
50 from vendor 2 and
20 from vendor 3
In your scenario (as I understand it) Marketplace 1 would charge the commission upfront and the rest of the purchases would be charged individually by each store. I love the idea of the MP not touching the money, but here, there would still be a charge of say 11$ (considering a 10% commission rate) on the client’s credit card.
As we launch a new Marketplace I can see this being a problem, because buyers may not understand why that amount has been charged to their credit card. They’ll naturally assume that it is on top of their purchases,
So in order to remove this friction entirely, I’d like to have the following scenario:
Buyer buys 3 different products from 3 different vendors,
40 from vendor 1
50 from vendor 2 and
20 from vendor 3
At the time of purchase their credit card is charged:
$40 from vendor1 (assuming a 10% commission rate)
$50 from vendor 2 and
$20 from vendor 3
Then the account of vendor 1 at paypal is charged $4 from Marketplace, account of vendor 2 at paypal is charged $5 from Marketplace and account of vendor 3 at paypal is charged $2 from Marketplace (this could actually be delayed until the last day of the month where the aggregate commissions for the past month are computed.
Is there anyway to do this with your Paypal plugins?
Hi John,
Thanks for your thoughts. There’s a lot to unpack here, but I’ll try to keep it short.
First, this plugin is using the Classic Express Checkout API with PayPal, which supports a parallel payment. This simply splits the payment between multiple receivers, but yes, the buyer is going to see the split. The total of the payments on their side would equal the total of the order on their WooCommerce order receipt.
To be honest, we have hundreds (I believe over 1k now) of people using this with WC Vendors, Dokan, and WCFM. I really have not heard any complaints from people that this is causing an issue. I can’t say that they haven’t had people question and had to deal with it, but it apparently hasn’t been enough where we have been getting a lot of requests to improve it.
We are just about to release an update to our main “PayPal for WooCommerce” plugin that includes all of the latest PayPal APIs. Then we’ll be extending this into the Multi-Account plugin, and we’ll be able to improve all of the overall functionality to support what their latest APIs support. This includes things like Delayed Disbursement and better handling of refunds.
However, that’s still not going to work exactly like what you’ve laid out here. With the new “PayPal Complete Payments” system we’ll be able to do “parallel payments” or “chained payments”. The chained payment would be like delayed disbursement. The funds would come to you first, where it’s held in “escrow”, and then when you trigger the release you can send out the other portions to the vendors while keeping your commission amount.
If I understand correctly, you are asking for a single payment on the buyer side that goes directly to separate vendor accounts, track the commissions for each one, and then trigger a payout from each of the vendor accounts to you.
That is simply not how these particular APIs are designed, and I can’t think of any way to show a single charge on the buyer side while splitting the payment directly between vendor accounts. The buyer either has to see the split, or there has to be a “middle” account that the buyer would see which then disburses the funds accordingly.
Let me know if I’ve misunderstood something and I’m happy to discuss this more. Again, we’re working on all the new APIs now, and we’ll be dripping that functionality out over Q2. It will improve all of this in general.
Let me know if you have any questions or concerns about that.
Thanks!
Drew
Hey Drew, this is a great breakdown and tutorial with your plugin. I’m curious about taxes in the scenario you’ve listed.
Our goal is to remain hands off taxes and avoid the seller of record issue marketplaces are facing.
If we’re using a tax service to calculate taxes for the vendors (TaxJar for example), will the full order total (pre-split) be reported or only the amount the vendor received post-split?
Also, I’m assuming but want to verify, depending on how the MP is setup, taxes should be included on he total to the vendor on the PayPal checkout screen, correct?
Thank you!
As it is right now, today, the plugin will include the tax paid on the amount that gets sent to the product owner / vendor. We have recently received requests to have the taxes paid to the MP account instead, so that they can report and pay the taxes accordingly as the marketplace.
In an update very soon we will be adding an option where you can do this either way based on your own needs. So again, right now it gets paid to the vendor, but coming soon you’ll have the option to make it pay taxes to the MP account.
Hope that answers your question..?? Let me know if you have any other questions or concerns. Thanks!
Drew