Author

Topic: Potential Solution for Subscription Payments on the Bitcoin Network (Read 158 times)

legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
I've paid few digital goods/service with Bitcoin and so far i'd just make big deposit and paid in advance for few months or an annual. As for options you mentioned, it requires the wallet connected to internet in order to create & broadcast the transaction at specific interval, which probably isn't best option if you have serious security concern.
If you have money, you buy annual plan but if you don't have, then monthly subscription is the best method and usually, people choose monthly plan over annual plan. It's easier to pay $30 every month than $300 once a year.

On other hand, some people who don't have much money but really need that service might force themselves to pay annually since it's cheaper on long term. With your example, they can save $60 per year along with TX fee for extra 11 Bitcoin transaction they never create. mempool.space currently shows 6 sat/vB ($0.23) for no priority which equal to saving about $2.53 on TX fee.

But in practice it wouldn't be easy since due to few factors such as choosing appropriate fee rate and security issue (such as if the wallet ask for address and amount from server).
Why wouldn't be easy?
--snip--

Here's why,
1. Choosing fee rate without overpay (e.g. you probably don't want pay $2 as TX fee to send $30, which equal to 6.6% fee) and confirmed quickly isn't trivial, no matter what software you use.
2. Electrum and service you use might has different exchange rate, which may lead to overpay/underpay. Although overpay is acceptable when you actually deposit to account balance.
3. Wallet need to be unlocked all the time, unless you sign transaction in advance which bring security concern.

I wouldn't say it's hard, but it's not easy either and IMO it's rather tricky task.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
I think he either mean,
1. Using script which connect to certain wallet software (e.g. Electrum and Bitcoin Core) create transaction on regular basis.
2. It's technically possible to write wallet software with such capability.

The second option is clearly more practical than the first option. You should not try to stitch this functionality into wallet software which fundamentally does not support it.

Quote
But in practice it wouldn't be easy since due to few factors such as choosing appropriate fee rate and security issue (such as if the wallet ask for address and amount from server).

I remember BlackHatCoiner writing something along the lines that the wallet software can periodically regenerate the unsigned transactions with the latest fee rates, to solve this problem.
hero member
Activity: 882
Merit: 792
Watch Bitcoin Documentary - https://t.ly/v0Nim
I've paid few digital goods/service with Bitcoin and so far i'd just make big deposit and paid in advance for few months or an annual. As for options you mentioned, it requires the wallet connected to internet in order to create & broadcast the transaction at specific interval, which probably isn't best option if you have serious security concern.
If you have money, you buy annual plan but if you don't have, then monthly subscription is the best method and usually, people choose monthly plan over annual plan. It's easier to pay $30 every month than $300 once a year.

But in practice it wouldn't be easy since due to few factors such as choosing appropriate fee rate and security issue (such as if the wallet ask for address and amount from server).
Why wouldn't be easy? Electrum is a good example. It is lightweight, has automatic transaction fee calculator and estimator, i.e. it can estimate whether 5 sat/vByte fee is a good choice or bad choice right now, it can also estimate in how many blocks will your transaction get confirmed. I don't know how it calculates fee but if it moves on mempool.space's model, then I think this problem will be solved.
By the way, Electrum can fantastically convert bitcoin into fiat and gives you an option to choose your preferred btc/usd rate source.

So, to sum up:
1. Electrum can convert bitcoin in fiat
2. Electrum can calculate transaction fees.

What needs improvement?
1. Transaction fee calculation method must be improved

What features does Electrum need to get?
1. Electrum should be able to automatically generate transactions with fixed fiat and should be able to convert it into BTC and make a transaction with appropriate fee, in case fee gets increased out of nowhere and transaction gets stacked, we can also give it permission to use RBF feature by default.

Is it hard? I don't think so. I am not a software developer (learning some) but I assume this is not really hard to make but correct me if I am wrong.
legendary
Activity: 2800
Merit: 2736
Farewell LEO: o_e_l_e_o
Personally I think that subscription payment is not a problem of bitcoin network but a problem of bitcoin wallet software, probably. To my mind, the solution to this problem looks like this:
1. The company that offers you subscription for certain items or products, should generate one bitcoin address for subscription payments.
2. You and the company should use one particular website for bitcoin price, for example - coingecko.
3. Your wallet should calculate fee, for example, according to mempool.space's medium fee and wallet should give you the possibility to send $50 converted in bitcoins to this particular address once every 30 days. If you want to stop it, you should easily be able to delete this configuration.

That's all, all of these options except automation is available on Electrum and if developers modify bitcoin wallets, I think subscription payment method will easily be available for everyone.
You summed it up nicely and that's what we need. For the end user a plugin or something that will give user friendly UI and the user only give the information that needs like xpub or things like that. I once had a payment server to accept payments from clients but there were no feature to receive recurrent payment. Later I searched if it even exists and nothing such things found for bitcoin or any crypto.

Service like namecheap offers you to load balance and they take their subscription fees from the account balance. That's the only alternative but here you are giving the fund upfront not like usual subscription payment.
hero member
Activity: 882
Merit: 792
Watch Bitcoin Documentary - https://t.ly/v0Nim
Personally I think that subscription payment is not a problem of bitcoin network but a problem of bitcoin wallet software, probably. To my mind, the solution to this problem looks like this:
1. The company that offers you subscription for certain items or products, should generate one bitcoin address for subscription payments.
2. You and the company should use one particular website for bitcoin price, for example - coingecko.
3. Your wallet should calculate fee, for example, according to mempool.space's medium fee and wallet should give you the possibility to send $50 converted in bitcoins to this particular address once every 30 days. If you want to stop it, you should easily be able to delete this configuration.

That's all, all of these options except automation is available on Electrum and if developers modify bitcoin wallets, I think subscription payment method will easily be available for everyone.
legendary
Activity: 2800
Merit: 2736
Farewell LEO: o_e_l_e_o
When you have a business and it needs to have many tools to manage it and pay yearly or monthly then it's really hard to check with all the emails/notifications you receive.
I'm genuinely curious how frustrating that really is. When I haven't paid the monthly or annual plan of a service, I get notified by email long before the expiration date. There are couple of warning messages, like that my subscription plan needs repayment, or that if I don't pay until October 12th, the service will no longer work etc.
I have a hosting and for some reasons it's monthly payment instead of yearly. In the last few years I have missed my payment several times. I load btc so they take payment from the account balance, but when the account balance is low they send me emails however i do not check that email too frequently result is a few times they even deactivated the hosting. This is just one example. It is frustrating. If I had a recurrent payment system directly with my bitcoin wallet then I think I would not had such problem.

Quote
Subscription payments can be automated from your wallet software. I think the fact that nobody does that demonstrates that it is nearly useless.
How? I never even heard about it.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
When you have a business and it needs to have many tools to manage it and pay yearly or monthly then it's really hard to check with all the emails/notifications you receive.
I'm genuinely curious how frustrating that really is. When I haven't paid the monthly or annual plan of a service, I get notified by email long before the expiration date. There are couple of warning messages, like that my subscription plan needs repayment, or that if I don't pay until October 12th, the service will no longer work etc.

Subscription payments can be automated from your wallet software. I think the fact that nobody does that demonstrates that it is nearly useless.
legendary
Activity: 2800
Merit: 2736
Farewell LEO: o_e_l_e_o
I honestly don't mind about subscription payments. What's so uncomfortable with getting notified that you need to repay the service every once in a while?
When you have a business and it needs to have many tools to manage it and pay yearly or monthly then it's really hard to check with all the emails/notifications you receive. You are easily missing a payment then seeing the service is not working. With an automatic subscription you have no hassle at all. If you don't have much online activity and have recurrent payment for one or two company then it sounds easy to track though but from my experience I can tell even with one or two recurrent payment, without having an automatic subscription plan you still miss your payments.

Locktime is a field in every transaction which is the minimum block height or date that needs to be fulfilled for the transaction to be valid. In Electrum, you can try it out in testnet. Choose an address to send tBTC, click "Send", then "Advanced", then right up there there is "LockTime". Try setting it to a couple of minutes (or blocks) into the future. You will notice that you will be incapable of broadcasting that transaction before that.

LoyceV has written a well guide for setting up inheritance planning with locktime: https://bitcointalksearch.org/topic/using-locktime-for-inheritance-planning-backups-or-gifts-5180850
Thank you.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
I honestly don't mind about subscription payments. What's so uncomfortable with getting notified that you need to repay the service every once in a while?

I have done many thing with bitcoin but I am yet to check how time-lock transaction works. Could you refer me a good guide please? I am comfortable with Electrum.
Locktime is a field in every transaction which is the minimum block height or date that needs to be fulfilled for the transaction to be valid. In Electrum, you can try it out in testnet. Choose an address to send tBTC, click "Send", then "Advanced", then right up there there is "LockTime". Try setting it to a couple of minutes (or blocks) into the future. You will notice that you will be incapable of broadcasting that transaction before that.

LoyceV has written a well guide for setting up inheritance planning with locktime: https://bitcointalksearch.org/topic/using-locktime-for-inheritance-planning-backups-or-gifts-5180850
legendary
Activity: 2800
Merit: 2736
Farewell LEO: o_e_l_e_o
Many people in the Bitcoin community have said that these technologies Bitcoin scripting layer 1, TrustSwap, Sablier, and Bitcoin Lightning Network with LSAT protocol offer potential solution for subscription payment, membership payments and recurring payments on the Bitcoin network. How true or feasible is this?
The subscription payment is what I miss a lot with cryptocurrency, obviously with bitcoin.

IF you want a TL;DR, you can basically sign a bunch of time-locked transactions ahead of time, and then broadcast them one by one automatically as each subscription renewal date approaches. There are a lot of fine details that are not covered by this simple explanation, so I advise you to read the whole thread.
I have done many thing with bitcoin but I am yet to check how time-lock transaction works. Could you refer me a good guide please? I am comfortable with Electrum.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
There has been some discussion a few days ago about the possibility of emulating a subscription payment on the Bitcoin network on this board. I advise you to start reading from there: https://bitcointalksearch.org/topic/a-smart-self-custodial-wallet-for-bitcoin-5467075

IF you want a TL;DR, you can basically sign a bunch of time-locked transactions ahead of time, and then broadcast them one by one automatically as each subscription renewal date approaches. There are a lot of fine details that are not covered by this simple explanation, so I advise you to read the whole thread.
sr. member
Activity: 1022
Merit: 368
Many people in the Bitcoin community have said that these technologies Bitcoin scripting layer 1, TrustSwap, Sablier, and Bitcoin Lightning Network with LSAT protocol offer potential solution for subscription payment, membership payments and recurring payments on the Bitcoin network. How true or feasible is this?
Jump to: