From 2ef442cf8352d7a5c004fcbcc08c6e0cd44bdf66 Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 12:19:51 +0100 Subject: [PATCH 1/7] Improve readme --- README.md | 192 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 126 insertions(+), 66 deletions(-) diff --git a/README.md b/README.md index b516abbf5..322e20567 100644 --- a/README.md +++ b/README.md @@ -1,98 +1,147 @@ +# BTCPay Server ![BTCPay Server](BTCPayServer/wwwroot/img/btc_pay_BG_twitter.png) -[![Docker Automated build](https://img.shields.io/docker/automated/jrottenberg/ffmpeg.svg)](https://hub.docker.com/r/btcpayserver/btcpayserver/) -[![Deploy to Azure](https://azuredeploy.net/deploybutton.svg)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fbtcpayserver%2Fbtcpayserver-azure%2Fmaster%2Fazuredeploy.json) -[![CircleCI](https://circleci.com/gh/btcpayserver/btcpayserver.svg?style=svg)](https://circleci.com/gh/btcpayserver/btcpayserver) +

+ Accept Bitcoin payments โ‚ฟ +

+

BTCPay Server is a free and open-source Bitcoin payment processor which allows you to accept bitcoin without fees or intermediary. +

+

+ + + + + + + + + + + + + + + + + + +

-# BTCPay Server +
+

+ + Website + + | + + Documentation + + | + + API + + | + + | + + YouTube + + | + + Chat + +

+
-## Introduction +
+ "This is lies, my trust in you is broken, I will make you obsolete" ๐Ÿ’š + +
+
-BTCPay Server is a free and open-source cryptocurrency payment processor which allows you to receive payments in Bitcoin and altcoins directly, with no fees, transaction cost or a middleman. +

+ View Demo + ยท + Report a bug + ยท + Request a feature + ยท + FAQ +

-BTCPay Server is a non-custodial invoicing system which eliminates the involvement of a third-party. Payments with BTCPay Server go directly to your wallet, which increases the privacy and security. Your private keys are never uploaded to the server. There is no address re-use, since each invoice generates a new address deriving from your xpubkey. +## ๐Ÿ’ผ Table of Contents -The software is built in C# and conforms to the invoice [API of BitPay](https://bitpay.com/api). It allows for your website to be easily migrated from BitPay and configured as a self-hosted payment processor. +* [Features](#-features) +* [Getting Started](#-getting-started) +* [Documentation](#-documentation) +* [Contributing](#-contributing) +* [Developing](#-developing) + * [API](#-api) +* [Community](#-community) +* [License](#-license) +* [Supporters](#-supporters) -You can run BTCPay Server as a self-hosted solution on your own server, or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). +![](https://raw.githubusercontent.com/btcpayserver/btcpayserver-doc/master/docs/img/BTCPayServerScreenshot.png) -The self-hosted solution allows you not only to attach an unlimited number of stores and use the Lightning Network but also become the payment processor for others. - -Thanks to the [apps](https://docs.btcpayserver.org/Apps/) built on top of it, you can use BTCPay to receive donations, start a crowdfunding campaign or have an in-store Point of Sale. - -[![What is BTCPay](https://img.youtube.com/vi/q7xJMno_B3U/sddefault.jpg)](https://www.youtube.com/watch?v=q7xJMno_B3U "What is BTCPay") - -## Table of Contents - -* [Features](#features) -* [Getting Started](#getting-started) -* [Documentation](#documentation) -* [Contributing](#Contributing) -* [How to build](#how-to-build) -* [How to run](#how-to-run) -* [How to debug](#how-to-debug) -* [Dependencies](#other-dependencies) - -## Features +## ๐ŸŽจ Features * Direct, peer-to-peer Bitcoin payments * No transaction fees (other than the [network fee](https://en.bitcoin.it/wiki/Miner_fees)) -* No processing fees -* No middleman -* No KYC +* No fees, middleman or KYC * Non-custodial (complete control over the private key) -* Enhanced privacy -* Enhanced security +* Enhanced privacy & privacy * Self-hosted * SegWit support -* Lightning Network support (LND, c-lightning, Eclair and Ptarmigan) +* Lightning Network support (LND, c-lightning, Eclair, and Ptarmigan) * Tor support -* Opt-in [altcoin](https://docs.btcpayserver.org/FAQ/FAQ-Altcoin/) integrations -* Full compatibility with BitPay API (easy migration) -* Process payments for others -* Easy-embeddable Payment buttons -* Point of sale app -* Crowdfunding app -* Payment Requests -* Internal, full-node reliant wallet with [hardware wallet integration](https://docs.btcpayserver.org/Vault/) +* Bitcoin-only build +* Share your instance with friends +* Invoice management +* Point of sale $ crowdfunding app +* Payment requests and donation button +* Full-node reliant wallet with [hardware wallet integration](https://docs.btcpayserver.org/Vault/) +* Separate community-maintained altcoin build (when supported [altcoins](https://docs.btcpayserver.org/FAQ/FAQ-Altcoin/) are enabled) -## Getting Started +## ๐Ÿš€ Getting Started Firstly, decide if you want to host an instance yourself or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). If you've chosen to self-host, we documented plenty [ways to deploy BTCPay Server](https://docs.btcpayserver.org/Deployment/). After successful deployment, make sure to check our [getting started](https://docs.btcpayserver.org/RegisterAccount/) and [walkthrough](https://docs.btcpayserver.org/Walkthrough/) guides. In case you would like to use Lightning Network, see [Lightning guide](https://docs.btcpayserver.org/LightningNetwork/). -## Documentation +## ๐Ÿ“— Documentation Please check out our [official website](https://btcpayserver.org/), our [complete documentation](https://docs.btcpayserver.org/) and [FAQ](https://docs.btcpayserver.org/FAQ/) for more details. -If you have trouble using BTCPay, consider joining [communities listed on official website](https://btcpayserver.org/#communityCTA) to get help from BTCPay community members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues) for technical issues you can't resolve through other channels or feature requests you've validated with other members of community. +If you have trouble using BTCPay, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the BTCPay community members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. -Main community chat is located on [Mattermost](https://chat.btcpayserver.org/). +The main community chat is located on [Mattermost](https://chat.btcpayserver.org/). -## Contributing +## ๐Ÿค Contributing -BTCPay is built and maintained entirely by volunteer contributors around the internet. We welcome and appreciate new contributions. +BTCPay Server is built and maintained entirely by volunteer contributors around the internet. We welcome and appreciate new contributions. If you're a developer looking to help, but you're not sure where to begin, check the [good first issue label](https://github.com/btcpayserver/btcpayserver/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22), which contains small pieces of work that have been specifically flagged as being friendly to new contributors. -Contributors looking to do something a bit more challenging, before opening a pull request, please [create an issue](https://github.com/btcpayserver/btcpayserver/issues/new/choose) or join [our community chat](https://chat.btcpayserver.org/) to get early feedback, discuss best ways to tackle the problem and to ensure there is no work duplication. +Contributors looking to do something a bit more challenging, before opening a pull request, please join [our community chat](https://chat.btcpayserver.org/) or [start a GitHub discussion](https://github.com/btcpayserver/btcpayserver/discussions) to get early feedback, discuss best ways to tackle the problem and ensure there is no work duplication. + +There are many other ways to get involved with the project. Check our [contribution guidelines](https://docs.btcpayserver.org/Contribute/). To get the big-picture of the project development, visit our [evolving roadmap](https://github.com/orgs/btcpayserver/projects/9). We organize different types of community calls several times a month. [Subscribe to our calendar](https://github.com/btcpayserver/organization#calendar) and feel free to join our calls to discuss development, design, documentation and more. + +## ๐Ÿง‘โ€๐Ÿ’ป Developing + +To begin developing locally, visit [local development guide](https://docs.btcpayserver.org/LocalDevelopment/). There are also several video-tutorials: * [Setting up development environment on Windows](https://www.youtube.com/watch?v=ZePbMPSIvHM) * [Setting up development environment Linux (Ubuntu)](https://www.youtube.com/watch?v=j486T_Rk-yw&t) * [Setting up development environment MacOS](https://www.youtube.com/watch?v=GWR_CcMsEV0) -You also have an awesome video of our contributors which explains how to get started. -[![Rockstar Dev and Britt Kelly - BTCPay Server Code Along](https://img.youtube.com/vi/ZePbMPSIvHM/sddefault.jpg)](https://www.youtube.com/embed/VNMnd-dX9Q8) +### How to build -Here is some info about [how to extend the themes](https://docs.btcpayserver.org/Theme/). +While the documentation advises using docker-compose, you may want to build BTCPay Server yourself. -## How to build - -While the documentation advises to use docker-compose, you may want to build BTCPay Server yourself. - -First install .NET Core SDK v3.1 as specified by [Microsoft website](https://dotnet.microsoft.com/download/dotnet-core/3.1). +First, install .NET Core SDK v3.1 as specified by [Microsoft website](https://dotnet.microsoft.com/download/dotnet-core/3.1). On Powershell: @@ -106,9 +155,9 @@ On linux: ./build.sh ``` -## How to run +### How to run -Use the `run` scripts to run BTCPayServer, this example shows how to print the available command line arguments of BTCPayServer. +Use the `run` scripts to run BTCPay Server, this example shows how to print the available command-line arguments of BTCPay Server. On Powershell: @@ -122,7 +171,7 @@ On linux: ./run.sh --help ``` -## How to debug +### How to debug If you want to debug, use Visual Studio Code or Visual Studio 2019. @@ -136,23 +185,34 @@ If you need to debug ledger wallet interaction, install the development time cer # Install development time certificate in the trust store dotnet dev-certs https --trust ``` - Then use the `Docker-Regtest-https` debug profile. -## Other dependencies +### Other dependencies For more information, see the documentation: -[How to deploy a BTCPay server instance](https://docs.btcpayserver.org/Deployment/). +[How to deploy a BTCPay Server instance](https://docs.btcpayserver.org/Deployment/). -## Supported altcoins +### ๐Ÿงช API -Bitcoin is the only focus of the project and its core developers. However, opt in integrations are present for [several altcoins](https://docs.btcpayserver.org/FAQ/FAQ-Altcoin/). Altcoins are maintained by their respective communities. +BTCPay Server has two API: -## License +- **Greenfield API (New)** + - [Greenfield API documentation](https://docs.btcpayserver.org/API/Greenfield/v1/) + - [Greenfield API examples with CURL](https://docs.btcpayserver.org/GreenFieldExample/) +- **Legacy API** + +The **Greenfield API** is our brand-new API which is still in development. Once complete, it will allow you to run BTCPay Server heedlessly. +The **legacy API**, is fully compatible with [BitPay's API](https://bitpay.com/api/). It has limited features, but allows instant migration from BitPay. + +## ๐Ÿ’š Community + +Our community is โค๏ธ of the project. To chat with other community members in real-time, join our [Mattermost chat](https://chat.btcpayserver.org). We're also on [GitHub discussions](https://github.com/btcpayserver/btcpayserver/discussions). + +## ๐Ÿ“ License BTCPay Server software, logo and designs are provided under [MIT License](https://github.com/btcpayserver/btcpayserver/blob/master/LICENSE). -## Supporters +## ๐Ÿ™ Supporters The BTCPay Server Project is proudly supported by these entities through the [BTCPay Server Foundation](https://foundation.btcpayserver.org/). From ec3b80cec9b538ecfe76e9a9a9c413b2fc5560f4 Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 12:36:12 +0100 Subject: [PATCH 2/7] Apply suggestions from code review Co-authored-by: Andrew Camilleri --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 322e20567..5995cada6 100644 --- a/README.md +++ b/README.md @@ -92,13 +92,13 @@ * No transaction fees (other than the [network fee](https://en.bitcoin.it/wiki/Miner_fees)) * No fees, middleman or KYC * Non-custodial (complete control over the private key) -* Enhanced privacy & privacy +* Enhanced privacy & security * Self-hosted * SegWit support * Lightning Network support (LND, c-lightning, Eclair, and Ptarmigan) * Tor support * Bitcoin-only build -* Share your instance with friends +* Share your instance with friends (multi-tenant) * Invoice management * Point of sale $ crowdfunding app * Payment requests and donation button @@ -194,7 +194,7 @@ For more information, see the documentation: ### ๐Ÿงช API -BTCPay Server has two API: +BTCPay Server has two APIs: - **Greenfield API (New)** - [Greenfield API documentation](https://docs.btcpayserver.org/API/Greenfield/v1/) From d887546e5834451bbc6d4993d1553e97516e296a Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 12:37:59 +0100 Subject: [PATCH 3/7] remove chat --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 322e20567..f695408b2 100644 --- a/README.md +++ b/README.md @@ -117,8 +117,6 @@ Please check out our [official website](https://btcpayserver.org/), our [complet If you have trouble using BTCPay, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the BTCPay community members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. -The main community chat is located on [Mattermost](https://chat.btcpayserver.org/). - ## ๐Ÿค Contributing BTCPay Server is built and maintained entirely by volunteer contributors around the internet. We welcome and appreciate new contributions. From 6097ab5d12833f2ef5fcabed2a8787e35c26988d Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 14:04:35 +0100 Subject: [PATCH 4/7] Update README.md Co-authored-by: d11n --- README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 2ad0beb36..0bb32b4c0 100644 --- a/README.md +++ b/README.md @@ -97,13 +97,11 @@ * SegWit support * Lightning Network support (LND, c-lightning, Eclair, and Ptarmigan) * Tor support -* Bitcoin-only build * Share your instance with friends (multi-tenant) -* Invoice management -* Point of sale $ crowdfunding app -* Payment requests and donation button -* Full-node reliant wallet with [hardware wallet integration](https://docs.btcpayserver.org/Vault/) -* Separate community-maintained altcoin build (when supported [altcoins](https://docs.btcpayserver.org/FAQ/FAQ-Altcoin/) are enabled) +* Invoice management and Payment requests +* Apps: Point of sale, crowdfunding, donation button +* Full-node reliant wallet with [hardware wallet integration](https://docs.btcpayserver.org/Vault/) and SegWit support +* Bitcoin-only build, separate community-maintained altcoin build ([supported altcoins](https://docs.btcpayserver.org/FAQ/FAQ-Altcoin/)) ## ๐Ÿš€ Getting Started From 8a1069bf70d8ae3e631dc4cefb633bff07a6ad0e Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 18:30:57 +0100 Subject: [PATCH 5/7] Apply suggestions from code review Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com> --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 0bb32b4c0..7090a94af 100644 --- a/README.md +++ b/README.md @@ -113,7 +113,7 @@ After successful deployment, make sure to check our [getting started](https://do Please check out our [official website](https://btcpayserver.org/), our [complete documentation](https://docs.btcpayserver.org/) and [FAQ](https://docs.btcpayserver.org/FAQ/) for more details. -If you have trouble using BTCPay, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the BTCPay community members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. +If you have trouble using BTCPay Server, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues/new/choose) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. ## ๐Ÿค Contributing @@ -127,7 +127,7 @@ There are many other ways to get involved with the project. Check our [contribut ## ๐Ÿง‘โ€๐Ÿ’ป Developing -To begin developing locally, visit [local development guide](https://docs.btcpayserver.org/LocalDevelopment/). There are also several video-tutorials: +To begin developing locally, visit our [local development guide](https://docs.btcpayserver.org/LocalDevelopment/). There are also several video-tutorials: * [Setting up development environment on Windows](https://www.youtube.com/watch?v=ZePbMPSIvHM) * [Setting up development environment Linux (Ubuntu)](https://www.youtube.com/watch?v=j486T_Rk-yw&t) @@ -137,7 +137,7 @@ To begin developing locally, visit [local development guide](https://docs.btcpay While the documentation advises using docker-compose, you may want to build BTCPay Server yourself. -First, install .NET Core SDK v3.1 as specified by [Microsoft website](https://dotnet.microsoft.com/download/dotnet-core/3.1). +First, install .NET Core SDK v3.1 as specified by the [Microsoft website](https://dotnet.microsoft.com/download/dotnet-core/3.1). On Powershell: @@ -190,7 +190,7 @@ For more information, see the documentation: ### ๐Ÿงช API -BTCPay Server has two APIs: +BTCPay Server has two API's: - **Greenfield API (New)** - [Greenfield API documentation](https://docs.btcpayserver.org/API/Greenfield/v1/) @@ -198,11 +198,11 @@ BTCPay Server has two APIs: - **Legacy API** The **Greenfield API** is our brand-new API which is still in development. Once complete, it will allow you to run BTCPay Server heedlessly. -The **legacy API**, is fully compatible with [BitPay's API](https://bitpay.com/api/). It has limited features, but allows instant migration from BitPay. +The **Legacy API**, is fully compatible with [BitPay's API](https://bitpay.com/api/). It has limited features, but allows instant migration from BitPay. ## ๐Ÿ’š Community -Our community is โค๏ธ of the project. To chat with other community members in real-time, join our [Mattermost chat](https://chat.btcpayserver.org). We're also on [GitHub discussions](https://github.com/btcpayserver/btcpayserver/discussions). +Our community is the โค๏ธ of the project. To chat with other community members in real-time, join our [Mattermost chat](https://chat.btcpayserver.org). We're also on [GitHub discussions](https://github.com/btcpayserver/btcpayserver/discussions). ## ๐Ÿ“ License From 7e1481c43f0fc5347d713b33b0600f6a57ca6f79 Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Fri, 29 Jan 2021 18:31:41 +0100 Subject: [PATCH 6/7] Apply suggestions from code review Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com> --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7090a94af..f1ac874c6 100644 --- a/README.md +++ b/README.md @@ -105,13 +105,13 @@ ## ๐Ÿš€ Getting Started -Firstly, decide if you want to host an instance yourself or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). If you've chosen to self-host, we documented plenty [ways to deploy BTCPay Server](https://docs.btcpayserver.org/Deployment/). +Firstly, decide if you want to host an instance yourself or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). If you've chosen to self-host, we documented plenty of [ways to deploy BTCPay Server](https://docs.btcpayserver.org/Deployment/). After successful deployment, make sure to check our [getting started](https://docs.btcpayserver.org/RegisterAccount/) and [walkthrough](https://docs.btcpayserver.org/Walkthrough/) guides. In case you would like to use Lightning Network, see [Lightning guide](https://docs.btcpayserver.org/LightningNetwork/). ## ๐Ÿ“— Documentation -Please check out our [official website](https://btcpayserver.org/), our [complete documentation](https://docs.btcpayserver.org/) and [FAQ](https://docs.btcpayserver.org/FAQ/) for more details. +Please check out our [official website](https://btcpayserver.org/), [complete documentation](https://docs.btcpayserver.org/) and [FAQ](https://docs.btcpayserver.org/FAQ/) for more details. If you have trouble using BTCPay Server, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues/new/choose) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. From 73aeffd13c467a76faf1b02a1a155c5e14e5e6d3 Mon Sep 17 00:00:00 2001 From: Pavlenex Date: Sat, 30 Jan 2021 10:58:48 +0100 Subject: [PATCH 7/7] Apply suggestions from code review Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com> --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f1ac874c6..749e56bdc 100644 --- a/README.md +++ b/README.md @@ -105,7 +105,7 @@ ## ๐Ÿš€ Getting Started -Firstly, decide if you want to host an instance yourself or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). If you've chosen to self-host, we documented plenty of [ways to deploy BTCPay Server](https://docs.btcpayserver.org/Deployment/). +Firstly, decide if you want to host an instance yourself or use a [third-party host](https://docs.btcpayserver.org/ThirdPartyHosting/). If you've chosen to self-host, there are plenty of documented [ways to deploy BTCPay Server](https://docs.btcpayserver.org/Deployment/). After successful deployment, make sure to check our [getting started](https://docs.btcpayserver.org/RegisterAccount/) and [walkthrough](https://docs.btcpayserver.org/Walkthrough/) guides. In case you would like to use Lightning Network, see [Lightning guide](https://docs.btcpayserver.org/LightningNetwork/). @@ -113,7 +113,7 @@ After successful deployment, make sure to check our [getting started](https://do Please check out our [official website](https://btcpayserver.org/), [complete documentation](https://docs.btcpayserver.org/) and [FAQ](https://docs.btcpayserver.org/FAQ/) for more details. -If you have trouble using BTCPay Server, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from the members. Only file [Github issue](https://github.com/btcpayserver/btcpayserver/issues/new/choose) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. +If you have trouble using BTCPay Server, consider joining [communities listed on the official website](https://btcpayserver.org/#communityCTA) to get help from other contributors. Only create a [GitHub issue](https://github.com/btcpayserver/btcpayserver/issues/new/choose) for technical issues you can't resolve through other channels or feature requests you've validated with other members of the community. ## ๐Ÿค Contributing @@ -197,7 +197,7 @@ BTCPay Server has two API's: - [Greenfield API examples with CURL](https://docs.btcpayserver.org/GreenFieldExample/) - **Legacy API** -The **Greenfield API** is our brand-new API which is still in development. Once complete, it will allow you to run BTCPay Server heedlessly. +The **Greenfield API** is our brand-new API which is still in development. Once complete, it will allow you to run BTCPay Server headlessly. The **Legacy API**, is fully compatible with [BitPay's API](https://bitpay.com/api/). It has limited features, but allows instant migration from BitPay. ## ๐Ÿ’š Community