Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 'low priority' payment account type to BSQ #5153

Closed
pazza83 opened this issue Feb 4, 2021 · 10 comments
Closed

Add 'low priority' payment account type to BSQ #5153

pazza83 opened this issue Feb 4, 2021 · 10 comments

Comments

@pazza83
Copy link

pazza83 commented Feb 4, 2021

Premise:

It would be great if more people paid trade fees in BSQ.

Problem:

I have seen a number of users complaining on Keybase that no small offers are available.

When the Mempool is busy lots of offers to sell small amounts of BSQ offers get taken offline and offers to buy small amounts of BSQ (at good prices) remain untaken. This is due to sellers of BSQ not wanting to pay the high miner fees involved.

Unfortunately the Mempool has been consistently busy for the last 1-2 months. It is too much hassle to unpublish / republish offers so they get let offline.

Link to previous discussion about high miner fees: #4575

Solution:

A solution to this would be allow BSQ traders to select a low priority payment type, where they can make offers that can make payment in BSQ anytime in 7 days. This would result in more people leaving offers online through busy mempool activity.

There is already an 'Trade Instant' option for BSQ, I would propose a 'Trade low priority' be added also.

Outcome:

Hopefully this would result in more accessible BSQ offers for traders wanting to purchase small amounts <200.

Screenshots:

Here is a screenshot of the 'Trade Instant' account type.

Trade instant

Text for my proposal could say:

Trade low priority (within 7 days) with this altcoin to save on miner fees.

@Conza88
Copy link

Conza88 commented Feb 4, 2021

1. How would low priority (sats) be determined? Algorithm?

2. Greater issue imo is: "Improve BSQ account creation & purchase process" #5046. #5046

As a noob starting out and technically 'ok' it was woeful, and took a lot of effort to setup an account to actually buy.
And then confusing when trying to actually verify that BSQ had been sent. BSQ Wallet required resync etc.

3. As a bigger picture idea I raised in Keybase - should BSQ be considered an alt-coin at all?

image

56 of the 123 alt-coin trades are for BSQ. May be worth separating out? I know you can break down via toggle at the bottom, but I mean have own section for BSQ out of alt-coins category.

3.1 Also in the BUY BTC screen, it has a ton of BUY BSQ that dilute the BUY BTC offers. The toggle doesn't really help because I have BSQ account and can take them.

3.2 Surely the life-blood of the app should get more centre-stage? Not more than BTC obviously. But before it gets more 'centre-stage' I think you're right, definitely need to make it easier to purchase and low fee's etc are a good point.

4. Is there anyway to not do that off chain? L2?
Buyer can buy from their BSQ wallet from a bot or something?

@pazza83
Copy link
Author

pazza83 commented Feb 7, 2021

Hi @Conza88

Thanks for the comments.

The payment account type Altcoins low priority (7 day trade period) would be set up manually by traders in the same way they can set up an Altcoins Instant account (1 hour trade period), or an Altcoins account (24 hour trade period).

No algorithms would be required, it would be based on the account type someone made the offer on.

The other points are all relevant to increase BSQ usage but I think they are off topic to this particular proposal. I think lots of them are being addressed in other GitHub issues.

@chimp1984
Copy link
Contributor

chimp1984 commented Feb 9, 2021

Setting the miner fee very low would increase the risk that the transaction never gets confirmed and gets cleared from the mempool after a while. How long a nodes keep a tx in its mempool is a local setting of the bitcoin node. BitcoinJ does/can not recognize that. So it will require a SPV resync after some time when its very likely that the tx got cleared from most nodes.

I think with rising BTC price and with that sustained higher miner fees we have to recognize that limitations of Bitcoin and Bisq by being based on on-chain transactions.

I think we should increase efforts to look into off-chain or second layer/side-chains/alt-chain (Liquid, LN,...) solutions.
As long that is not the case, I think peope using BTC and Bisq have to consider that low amount transfers come with a hefty price tag. To buy tiny amount of gold would be the same, or to send small amount of Fiat internationally.

@pazza83
Copy link
Author

pazza83 commented Feb 10, 2021

Setting the miner fee very low would increase the risk that the transaction never gets confirmed and gets cleared from the mempool after a while. How long a nodes keep a tx in its mempool is a local setting of the bitcoin node. BitcoinJ does/can not recognize that. So it will require a SPV resync after some time when its very likely that the tx got cleared from most nodes.

True, but that is the same with Instant Altcoins, and Altcoins accounts.

Having the ability to send payment when the mempool is quiet doesn't necessarily mean choosing a low fee. It just means you can have a bit more leeway in time. A trade could be taken mid week and the BSQ could be sent at the weekend.

I think with rising BTC price and with that sustained higher miner fees we have to recognize that limitations of Bitcoin and Bisq by being based on on-chain transactions.

Agreed.

I think we should increase efforts to look into off-chain or second layer/side-chains/alt-chain (Liquid, LN,...) solutions.
As long that is not the case, I think peope using BTC and Bisq have to consider that low amount transfers come with a hefty price tag. To buy tiny amount of gold would be the same, or to send small amount of Fiat internationally.

Agreed. How would you propose doing this with BSQ? Is there a feasible solution that exists currently?

@chimp1984
Copy link
Contributor

chimp1984 commented Feb 10, 2021

I think we should try to make that more generic. E.g. create a transaction pool where one defines the miner fee and once the fee rate matches that it gets broadcast. We should avoid to just broadcast with low fee and hope that the mempool gets empty. The collateral damage of a transaction never getting confirmed and requireing SPV resync is too high, specially if it affects another users as well as it is with trade transactions.

Agreed. How would you propose doing this with BSQ? Is there a feasible solution that exists currently?

No concrete Idea yet ;-(

But maybe we have to admit that BSQ is more like equity. You don't buy Tesla shares for 8 USD.
I think its the fate of Bitcoin (on-chain) to be a high volume transfer technology not suited for transfer of smaller amounts. Bisq's use cases specially for limtiation with Fiat amounts carries an inherent problem know since long but still has not emerged to a major problem, but if BTC price stays on those high levels, and it look like thats the case, then we get more pressure to find alternatives.

@pazza83
Copy link
Author

pazza83 commented Feb 10, 2021

But maybe we have to admit that BSQ is more like equity. You don't buy Tesla shares for 8 USD.

How then is it best to encourage new users to buy a small amount of BSQ to fund their trades?

I think if BSQ is equity alone it decreases it's utility.

The more accessible BSQ is the more utility it has, this will make for a more healthy DAO.

Would enabling the BSQ wallet to send to multiple outputs work?

For example I could accept 6 trades in the week and then send the BSQ to all the addresses in one transaction with multiple outputs?

@chimp1984
Copy link
Contributor

But maybe we have to admit that BSQ is more like equity. You don't buy Tesla shares for 8 USD.

How then is it best to encourage new users to buy a small amount of BSQ to fund their trades?

No good idea. But they can buy larger amounts (e.g. 100 BSQ instead of 10 BSQ) and keep them as equity or for future trades. In fact if the trader thinks that Bisq is growing that makes sense as price will be higher in future if there is more trade volume and therefor buying more now saves costs.

I think if BSQ is equity alone it decreases it's utility.

The equity part is a different facade. In many projects the equity part is much more important then the actual revenue part (all new tech companies are not profitable the first years but equity can still be very attractive).
Also for burning BSQ I think the large XMR 2 BTC trades make probably the biggest chunk, so for the DAO that is the main revenue stream (XMR had 80-90% on volume most of the time).

The more accessible BSQ is the more utility it has, this will make for a more healthy DAO.

I agree. But as there is no trivial solution a complex solution will come with costs/risks and its they question if the balance is justified. E.g. If we find a payment solution for those and developing that costs us 50k USD but total sum of those small amount BSQ purchases is about 5000 USD per year, its not justified IMO. Tp pay in BTC the fee and use the burningman is already a potential solution in place. Not perfect but maybe good enough for now?

Would enabling the BSQ wallet to send to multiple outputs work?

For example I could accept 6 trades in the week and then send the BSQ to all the addresses in one transaction with multiple outputs?

Yes, that could be done. But I guess the coordination problems with multi party payments is considerable. There is a reason why even 2of3 multisig never took off. To automate the coordination in software is quite some effort and comes with its own new risks. And doint it low-tech comes with UX complexity and potential security risks (e.g. is the person on keybase really the one you think?).

Don't misunderstand me: I am in favor that all user use BSQ and happy if a solution is found for low amount trades. But I fear that is a part of the larger problem that on-chain transactions will become more expensive with Bitcoin. So far the alternatives (LN, Liquid, RSK,...) are not very convincing as well or complex/limites/diff. trust model. But for sure something we need to spend more time on...

@chimp1984
Copy link
Contributor

Here (bisq-network/proposals#304 (comment)) is one idea for a batch auction model but it only works for BSQ sellers not buyers. Maybe we find a way to make that possible for BSQ buyers as well. The a BSQ seller could make a request to say: the first 10 users who sends me a input/output pair will get added to a batch trade tx. So buyers could just accept that auction and sending the seller the signed input to spend with the corresponding expected output and the seller will batch all together once his goal is reached. So it would not require a handshake protocol which makes it much more simple and robust. But this still will only win some time once miner fees are much higher even batched txs will be too expensive. So I think off-chain (at least off-BTC) will be the only long term viable solution.

@pazza83
Copy link
Author

pazza83 commented Feb 11, 2021

Thanks for the detailed response.

I calculate it currently costs a new user ~$660 USD to begin trading with Bisq assuming they want to sign an account and pay fees in BSQ. I think this is a big jump for a new user that has not used Bisq before. It might also be one of the reasons more users pay trade fees with BTC.

$270 - for 0.006 BTC security deposit
$260 - for 100 BSQ for paying for trade fees
$120 - for 0.0025 btc to get account signed (10% markup)
£10 - for miner fees

But as there is no trivial solution a complex solution will come with costs/risks and its they question if the balance is justified. E.g. If we find a payment solution for those and developing that costs us 50k USD but total sum of those small amount BSQ purchases is about 5000 USD per year, its not justified IMO. Tp pay in BTC the fee and use the burningman is already a potential solution in place. Not perfect but maybe good enough for now?

I look at it from the perspective of user acquisition. Yes, those individual trades might only be 5000 USD per year. But how many of those traders would then go on to be active on the platform. The 5000 USD in this instance is the cost they pay to buy BSQ, hopefully understand a little more about the DAO, Bisq and BSQ, and become future traders.

Also the add 'low priority' payment account types proposed would not cost very much to implement :)

I appreciate it is not an ideal solution but maybe could be a stop gap solution to users complaining it is impossible to get their first BSQ. As could the proposal Improve BSQ accessibility through OTC market and bonded reputation

@pazza83
Copy link
Author

pazza83 commented May 16, 2021

Closing due to lack of support / higher priorities

@pazza83 pazza83 closed this as completed May 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants