Tagged: marketplace, withdrawal
- This topic has 7 replies, 2 voices, and was last updated 3 years, 5 months ago by alexg.
November 21, 2019 at 9:37 am #7327AnonymousInactive
When having other paymnt methods as Strpe, if an user pays using his card, then what happens when the vendor asks for his disbursal?
I mean, if the cutomer payd in euros by card, and the vendr asks for a disbursal, what happens next? his wallet (if fiat module enabled) is fullfiled with the amount (in this case euro)? the same if other currencies?
Best regardsNovember 22, 2019 at 8:03 am #7329
No, unfortunately you can only use the Multivendor gateway to transfer funds that have been paid via the WooCommerce crypto payment gateway. If the customer has paid with their fiat balance that they had on a fiat coin adapter, then commissions from this amount can be sent to the vendor. Otherwise the withdrawal to vendor cannot proceed with this gateway.
with regardsNovember 23, 2019 at 1:33 pm #7338AnonymousInactive
Thanks Alex for your reply. Since only one gatway can be selected for disbursals, this is a big problem because it is a limitation.
As a suggestion, I would be not possible to link the fiat disbursal (for orders payd with card) adding that amount to the vendr balance once the order is completed and asked for disbursal? maybe you have a better idea
I just made a test making an order using card, and from the order side I found it is OK. But the problem comes when the vendor asks for the disbursal. As a vendr, when asked for disbrsal, the next error showed:
– process_payment(): Could not pay 3.45 EUR in to vendr demo for subordrers 10010 and commsions 10011, because the EUR_exchnge rate is not known.
– Could not pay 0.000000 (3.45 EUR) in comissions to vendor demo: Adapter for ” is not online for move action
Thanks AlexDecember 9, 2019 at 7:43 am #7433
I have been able to develop a solution for this.
I believe the best approach is to pay out crypto commissions in the currency that the cart was paid. If this is possible because the cart was not paid with a cryptocurrency, then the plugin converts the value to a default currency that the admin has selected. The commissions will then be paid out in that cryptocurrency.
(At first I thought it would be a good idea to let each vendor choose their preferred cryptocurrency, but this is technically a lot harder, because the Marketplace code does not make this easy to extend. Also, if you let each vendor choose their preferred currency for payments, then you need to maintain significant balances on each of the coins they select. Instead, if vendors get paid in one cryptocurrency then you only need to keep some funds in that currency.)
The patch will be out once I have a solution for the missing withdrawal row in the Banking Overview.
I will post again here when the patch is out.
with regardsDecember 9, 2019 at 1:07 pm #7439AnonymousInactive
I do really appreciate your hard working.
The solution seems correct for me if the vendor has selected crpytogateway for its commsions disbursals. For purely fiatpaymnts there is the directbank transfer option, which I hope it will not be in conflict with this future implementation.
“…If the cart was not paid with a cryptocurrency…”, this ideally should consider any payment done with card, strpe, pypal…
If the admin has to choose the default crptocurrncy for conversions in order to pay commssions, what exchange rate would apply? a spot rate at the date of disbursal, or the spot rate at the order date? because in case of high volatility it would be not ideal for vendors.
Another question that comme to my mind, what if I choosed a cstom internal coin/pont, how to implement the exchnge rate?
Please keep me posted
Thank you Alex as usual
Best regardsDecember 9, 2019 at 5:00 pm #7441
The latest version
2.3.0addresses this issue in the following way:
If a cart has been paid using cryptocurrencies with this plugin, then the vendor receives their commission in that same currency.
If the cart payment has been performed via any other gateway, then the amount transferred from the admin to the vendor is denominated in a currency that the admin has chosen to be a site-wide default. The conversion is done with the exchange rate that is valid at the date of the commission payment.
If the admin has not yet selected a site-wide default currency for commission payouts, then they will see a warning about this.
Regarding your other question, if you want to specify directly an exchange rate between the shop’s woocommerce currency and some custom points, use the existing code example to do so: https://gist.github.com/alex-georgiou/492196184f206002c864225180ca8fbb
with regardsDecember 12, 2019 at 11:39 pm #7479AnonymousInactive
I made some orders, and it is just great! As far I could test, no issues founded.
Regarding the exchange rate code you provided for customs, where exactly should I put the code? functins.php?
Thank you Alex,
Best regardsDecember 13, 2019 at 9:42 am #7480
It is possible to add this code in your functions.php file if you want.
The best way would be to add this code as a new file under
You may want to change the name and other metadata at the top of the file (the large comment block).
Then, go to your list of plugins and activate your new plugin.
I will be adding a guide on all of this soon, in the brand new how-tos section on this site.
- You must be logged in to reply to this topic.