Payment Gateway - BTC Pay

Applicant background

I am a software engineer who worked for several major projects including: Windows (OS kernel), .NET framework (compiler and code generation) and SQL Server (Engine / query execution). I was also the CTO of startups and listed companies.

Description of Problem or Opportunity

After CoinPayments decided to go another direction, we would like to repurpose the Payment Gateway we developed by integrating with another payment framework: BTCPay.

BTCPay is open sourced and there is no vendor risk.

Proposed Solution

The payment gateway must be adapted to work with the API of BTCPay. There will be changes in the data model and the deployment.

Solution Format

According to BTCPay documentation, they want source code, docker scripts and configuration settings. The end result will be a package that merchants can install the same way as for BTC.

Technical approach

The Payment Gateway for Zcash will analyze data coming from Zcashd and maintain a database of account and transactions. The GW will also communicate with BTCPay server in order to receive and fulfill invoices. There are part of the system that were built for CoinPayments that need to be modified to fit BTCPay but we don’t expect any blocker.

How big of a problem would it be to not solve this problem?

Not having a payment gateway that can be easily added to e-commerce platforms is lost opportunities for Zcash adoption. A significant portion of the Payment Gateway has been built for CP and would be lost.

Execution risks

Integrating with a third party system (even open source) has its risk. We are not in charge of the upstream code and are subject to changes in their API.

Unintended Consequences

None that we can foresee

Evaluation plan

The project will be successful if BTCPay accepts our integration requests and includes Zcash on their platform. The requirements for this to happen is listed on their project page.

Schedule and Milestones

We expect this project to last another 3 months.


25 % is carried over from the previous grant that is now cancelled. We have developed the Payment Gateway and was in the process of integration testing when CP walked away.

75% is the work required to adapt to BTCPay.


115 000 $ from this project cost is carried over from the previous grant related to CoinPayments (that was not paid)

Edit: ZF Grants - Payment Gateway with BTCPay


Hey hanh,

It’s not clear what the total budget is. Or maybe it is clarified somewhere else?

My bad … I forgot to add the link.

The total budget is 120 k (including 115k from the previous grant that remained unpaid after CP changed direction)

1 Like

I’m in favor of funding this project, this was the original plan and you were flexible in switching to CoinPayments basically at the request of ECC.

I do have one question, the original BTCPay proposal from 5 months ago was for $80k total, this one seems to be for $120k total, plus the reuse of some work already completed and paid for during the CoinPayments project, is that correct? If so what’s the reason for the increase?

Actually, the gateway code was not paid in the previous project. When I finished it and was going to start integration, CP pulled out from the project. Therefore, its cost has been transfered to this project.

What’s technical difficulty in the integration?
How long is this going to take?
Is it just you who is going to be working on it?

115k seems high price tag. I’m not sure if anyone cares about BTCPay.

It might take some convincing for merchants to switch from CoinPayments to BTCPay, but at the end of the day, isn’t a non custodial, censorship resistant payment system in-line with Zcash’s raison d’être?


Yeah, are there merchants who are requesting for it?

You’re right, merchants aren’t pounding on the door demanding a non-custodial open-source payment processor for encrypted private internet money. And CoinPayments is great, but have you ever paid with Zcash, and sent money to CoinPayments, hoping they are honest and capable and don’t mess up before sending your payment to the business you’re trying to buy something at? Wouldn’t it be a better experience to not have to worry about that third party in the middle?


We build this? then which merchant is going to use. I want to make sure we build a product where we have merchants enthusiastic about integrating (not sure if there are any).

Is there any data on how many merchants use BTCPay.

Yes, here’s the BTC Pay directory.
CheapAir, Nakamoto Institute, Andreas M. Antonopoulos, Torproject, TorGuard VPN, Casa Store, and lots more

BTCPayServer is/has been used by some pretty big merchants. It’s probably the best cryptocurrency payment processor in terms of being audited and being open-source. When Tesla accepted Bitcoin, they used BTCPayServer and organised an audit of it which resulted in a couple issues being fixed. Human Rights Foundation use BTCPayServer. It has a REST API also together with BitPay API support allowing it to be used in a headless manner. It has Point of Sale support built in.


Supportive on this grant. For existing BTCPayServer merchants to be able to accept Zcash with a toggle would be awesome and greatly enhances Zcash as a payment network.

1 Like

Congratulations @hanh , your proposal has been accepted! :tada:

With this and @1337bytes BTCpay compatible UX components grant:

ZOMG hopes that the two grants will be complementary to one another to build a robust BTCpay server option for vendors to accept Zcash. We hope that the two community members (Han and 1337bytes) awarded will also keep in communication and help one another if needed to accomplish thier BTCpay integrations.