dashed-slug.net › Forums › WooCommerce Cryptocurrency Payment Gateway extension support › In regards to the refund discussion.
April 21, 2020 at 7:53 am #8169
I think the only problem with process_refund() method in the wallets-woo-gateway.php ison line 267 where you calculate the refund at a new rate. Instead, they should be getting the exact amount of currency back as they originally put in. Wouldn’t this be a better option?
I could forsee a massive rise in value and someone wanting to be their exact amount of coin back a week or two later.
What is the general rule when doing refunds in crypto…?
I would think you’d want to get the exact amount in coins, like you would any other currency.
Correct me if I am wrong?
A further discussion on the matter with a friend is attached.
Attachments:You must be logged in to view attached files.April 21, 2020 at 8:05 am #8173
This is by design. Returning the crypto amount would not make sense. Imagine a crypto that suddently spikes 50%, all your users with pending orders would suddenly be incentivised to request refunds on that day.
If you are running a legitimate business, in terms of accounting, you immediately convert any crypto you receive to whatever currency you are paying your taxes with. You want to be hedged against crypto volatility. A business is not a place to speculate with price movements or expose yourself to price risk. If you want to do that, go to an exchange and start trading, but that shouldn’t have anything to do with your s-shop or other businesses. Crypto is used as a medium of exchange here. Shop prices should be set in fiat currencies.
Again, in a normal situation you would have more funds in your admin account so that you can pay out more crypto if the crypto value goes up, and less if it goes down. This will average out over time.
Hope this makes sense.
If you really need to refund the original amount, you can always mark the order as cancelled, and go to the transactions list and cancel the internal transfer. But there is no legitimate situation where you would want to do this.
Therefore, this calculation is not the problem. The problem is that in some situations the method is not being triggered (e.g. with auto commissions, or other edge cases) If there was a clear API on how to hook to the plugin to create a payout payment gateway, these problems would not exist. But the plugin is too closely tied with paypal and there is no sufficient decoupling of payout methods to the multivendor plugin, hence the need for the DB hacks you see in the code.
with regardsApril 21, 2020 at 8:07 am #8174
The situation is even more pronounced when dealing with what I hope to be a particularly volatile coin for the next 2-3 years.
I guess that is why dark net type business tend to only give out refund only on non-delivery.April 21, 2020 at 8:11 am #8175
Yes, and additionally, consider this:
Commissions are always accumulated to vendors in the store’s default currency. The end customer could have paid for the cart with cryptocurrencies, or with any other method, such as USD or EUR, and via PayPal, Stripe, or via any other gateway compatible with WooCommerce.
When you say that you pay commissions out as crypto, this means that you have converted any such amounts to the payout crypto. The plugin does the calculation for you. As an admin, you just make sure that enough funds are available. If there are not enough funds for a payout to proceed, the payout can be retried later when you put in the funds in the admin account.April 21, 2020 at 8:14 am #8176
I just deleted those orders and database moves, all is good. I see what you mean now though. Thanks for the explanation.April 21, 2020 at 8:18 am #8177
So you can use Paypal and Stripe at the same time as your plugin?April 21, 2020 at 8:21 am #8178
To be clear, there are two types of payment gateways here:
1. The WooCommerce payment gateways that enable a customer to pay for their cart. In WooCommerce you can always have multiple payment gateways working in parallel and the end user can choose between them.
2. The WC Marketplace payment gateways that allow vendors to receive their commissions. You have to choose one, and this one choice can be Bitcoin and Altcoin Wallets.April 21, 2020 at 8:27 am #8179
I see, the way I originally was designing this was as strictly a cryptocurrency website, because of the restrictions on the firearms related industry that some payment processors have been making.
However excepting cash would bring a lot more people to the website, if I can find the right payment processor.April 21, 2020 at 8:28 am #8180
Paypal & Stripe has restrictions on firearms and related gear.April 21, 2020 at 8:58 am #8181
I understand. The marketplace gateway has to work in the general case where there are many customer payment gateways.
There are articles listing payment processors who are suitable for selling firearms: https://www.cardpaymentoptions.com/credit-card-processing/gun-friendly-merchant-account-providers/
And out of those, some seem to have WooCommerce payment gateways, for example: https://pledgedplugins.com/products/payline-data-payment-gateway-woocommerce/
You would still want to distribute commissions to the vendors via some form of cryptocurrency, since none of the options available in WC Marketplace are suitable for enabling the sale of firearms.
I have been making progress on a turtlecoin adapter, and you should be able to use a2coin in a couple of weeks, if all goes well.
Perhaps you could consider accepting other more generic cryptocurrencies to attract more people. I am not sure what the merits of sector-specific cryptocurrencies are, even though I’ve read a few articles about them.
- You must be logged in to reply to this topic.