Skip to content

BtcPayServer Monero Integration

Andrew Camilleri requested to merge Kukks/ccs-proposals:btcpayserver into master

What the proposal is about.

BtcPayServer is an open-source, self-hosted cryptocurrency payment processor that allows merchants to not depend on any third-party to accept payments. Each deployment requires users to have their own full node.

Currently, BtcPay supports bitcoin(along with a few forks such as Litecoin, etc that are identical in design and rpc) and its lightning network. The only way for a merchant to accept any other non-compatible coins is to enable third-party integrations such as Changelly and Coinswitch which is far from ideal and often causes issues and headaches due to the way they function.

Integration would consist of allowing a user to specify a view-key in your BTCPay store and import that into the monero node. We then generate a subaddress for each invoice and monitor address while invoice is active.

Who will complete the proposal?

My name is Andrew Camilleri but I go by the handle Kukks. I'm a .NET full stack developer and have been coding professionally in all sorts of industries for around 10 years. I've been contributing to BTCPay for around a year now and have switched to doing it full time a few months ago. You can find me on the btcpay mattermost chat at https://chat.btcpayserver.org Twitter: https://twitter.com/mrkukks Github: https://github.com/kukks

Why it is important for Monero and the community.

There has been a relatively high demand for Monero to be integrated into BTCPay. Links for Monero support requests:

Your milestones and projected timeline

I estimate to have a shippable version within a 2 month time-frame. The bulk of the work will be spent abstracting BTCPay's bitcoin logic to handle the differences in Monero. I will also need to write a .NET client for Monero's RPC seeing as the only library available has been untouched for over 2 years. Once BTCPay can handle monero and communictae with the monero node, I will start work on adding Monero to the Btcpay Docker installer.

An expiration date for the proposal.

4 months from proposal being funded so that there is adequate time to plan.

Merge request reports