shermand100 / PiNodeXMR

Monero Node for Single Board Computers with Web Interface and additional tools pre-configured. Self Installing.
GNU General Public License v3.0
213 stars 40 forks source link

FEATURE REQUEST: Add BTCPay Server configured for Monero #98

Open brainchainz opened 1 year ago

brainchainz commented 1 year ago

Would be amazing if vendors could use pinode to create stores, and be able to open it to the interwebs so we don't have to use shopify or woocommerce to host btcpayserver. thanks!

shermand100 commented 1 year ago

Sure, I'll take a look.

I can't view https://sethforprivacy.com/guides/accepting-monero-via-btcpay-server/ at the moment. The site seems to be down. But poking around on reddit and other docs makes it seem like a simple installation process. Next I'd look at how to display this info in the Web-UI.

I've genuinely never touched the merchant side of things. My only concern would what kind of wallet this requires on the PiNodeXMR. Our security in most cases is fairly well locked down, with most features closed by default. Having a view-only merchant address to receive funds would keep me happy but I really wouldn't want a spend key stored on the device. Again in my so far limited research this also seems possible.

brainchainz commented 1 year ago

I reached out about Seth's site because it is a through guide, hopefully he can get it back up soon.

Regarding wallets, the user would only need to load in a wallet address and view key, such as the 'view only wallet' created from Feather Wallet etc.

What needs to be streamlined is the ease/ability for vendors to open up the BtcPayServer to the web, maybe that is some configuration of NGINX, such as:

https://jorijn.com/installing-nginx-reverse-proxy-with-ssl-certificate-umbrel-btcpayserver/

Then I can see more adoption of Monero and PiNode because a vendor could operate self sufficiently by running a node :)

I would also be interested in designing a 3D-printed node case for PiNode-XMR, maybe that can have some sales for $ support for the project :)

brainchainz commented 1 year ago

here ya go: https://web.archive.org/web/20221211131205/https://sethforprivacy.com/guides/accepting-monero-via-btcpay-server/

brainchainz commented 1 year ago

How's it going, needing any assistance?

deverickapollo commented 1 year ago

Hey - I am also interested in knowing if the project would be interested in integrating BTCPay by default. If so, I'll start working on an integration. I'm hosting the workshop for Monerotopia in May. If we can get this added before then, I'd like to use the project for the workshop.

brainchainz commented 1 year ago

Brilliant! i'm also going to be at the conference so let's link up and I can help outOn Feb 15, 2023, at 4:13 PM, Deverick @.***> wrote: Hey - I am also interested in knowing if the project would be interested in integrating BTCPay by default. If so, I'll start working on an integration. I'm hosting the workshop for Monerotopia in May. If we can get this added before then, I'd like to use the project for the workshop.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

shermand100 commented 1 year ago

This is great you're interested in lending a hand in this. I gave the build and identified a few areas where work will be needed to make it compatible. As for included by default, yes and no. Yes it's an amazing feature and becomes useful to a decent number of users. The negative is the need for the bitcoin blockchain too. For some people's hardware that's too much of an ask, so the port that displays the web interface can be reserved and the dependencies pre-installed but I'd suggest requiring user triggering the install of the BTC pay server if they wish.

The couple of issues I encountered that could only require small tweaks:

1) The BTC pay web interface is hosted on Nginx, we currently use Apache 2 so could be as simple as a content directory change.

2) The default containerisation method requires directing the BTC pay server to the current xmr blockchain location and may complicate a user importing a BTC blockchain. The option to import an xmr and BTC blockchain is important as PiNodeXMR runs on some very low power hardware where the device may not be capable of syncing from scratch itself. Perhaps a BTC server build from source rather than docker would be the direction I'd go. However I'll also disclose I don't have experience with docker and containers so it may be easier to adapt within docker than I think.

brainchainz commented 1 year ago

hi, any news on updates to pinodexmr and the btcpay server configured for monero? check out AUPA.IO they have a selfhosted BTC Payserver running that accpets btc, lightning, and monero. its a great solution for vendors, and this is what we need to streamline. Aupa did it all manually. We need something that non-techie vendor can spin up easily and start accepting these, online and in-store.

deverickapollo commented 1 year ago

I haven't had a chance to revisit this. I spent the past few months integrating monero + btcpay into Umbrel. I see that as being a more suitable setup for non-techie vendors looking to support multiple cryptocurrencies. I'll take another look after the release.

brainchainz commented 1 year ago

where can i find that?

deverickapollo commented 1 year ago

https://github.com/deverickapollo/umbrel-monero

shermand100 commented 1 year ago

Things have been busy so it's not been progressed but anyone can pick this up. Like my previous comments, this should be a simple-ish implementation as all components are there, (the node, blockchain) but the custom configuration of the payserver to reach outside of it's docker container to those assets is needed. Are either of you able to have a crack at that? Otherwise this would duplicate another monero instance within the container.

shermand100 commented 1 year ago

@deverickapollo Looks like this is the sort of thing for a tweak that'd be needed.

https://github.com/btcpayserver/btcpayserver-docker/issues/182