DONE - Blink API integration with BTCPay Server #3660
Closed
pretyflaco
started this conversation in
Bounties
Replies: 3 comments 1 reply
-
Hey I was wanted to try this task out but I was having trouble getting an API key since I'm a us based number any way you could help me out? It would help my development process |
Beta Was this translation helpful? Give feedback.
1 reply
-
Heads-up: We have received 1 claim on the bounty (currently in evaluation) |
Beta Was this translation helpful? Give feedback.
0 replies
-
This bounty has been claimed! Check out our other bounties. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Bounty details
Definition of Done
> PR gets merged to main
Bounty
> 5M Sats (0.05 BTC)
Bounty Patrons
> Galoy
Description
Implement the Blink GraphQL API as an option to use as a Lightning backend for BTCPay Server allowing Blink accounts to leverage the full suite of BTCPayserver applications without having to run a Lightning Node.
Background
BTCPay Server is a self-hosted, open-source bitcoin payment processor with a vast suite of merchant applications. Currently, it requires users to either run a Lightning Node themselves or trust a hobbyist custodian to leverage Lightning payments for BTCPay apps. An option to add a user’s Blink account as a Lightning backend would allow non-technical users to leverage Lightning payments with BTCPay apps in a quick and easy manner without having to worry about the intricacies of bootstrapping a Lightning Node and managing liquidity. In addition, the Stablesats functionality of Blink will provide users the option to keep their revenue in Dollars, allowing them to manage exchange rate volatility without having to go through an exchange manually.
Task
Submit a PR to BTCPay Server that will allow Blink users to authenticate through the Blink GraphQL API and use their Blink Account as the Lightning backend for BTCPay Server applications. The option to connect with Blink should appear in the section “Use a custom node”. Depending on the user’s default account selection (Bitcoin or Stablesats), funds received through BTCPay Server applications should either go to the user’s Bitcoin account or Stablesats account.
Implementation notes
The interface we would need implemented lives at:
BTCPayServer.Lightning.Common/ILightningClient.cs
An example of another project that did a similar implementation against their REST API, LNDHub, lives at:
BTCPayServer.Lightning.LNDhub/
There are some methods in the interface that don't need to be implemented for this to work e.g.
ListChannels
,ConnectTo
,GetDepositAddress
,OpenChannel
,GetInfo
. The LNDHub implementation example could be a good guide for what needs to be implemented from the interface and to what extent.Useful Links
Additional context
Below screenshot shows the page in BTCPay where the Lightning connection is configured. The option to connect and authenticate via Blink API should be added here.
Beta Was this translation helpful? Give feedback.
All reactions